imagewebp を使用して画像を webp に変換するのに問題があります。
私はこのコードを使用します:
$filename = dirname(__FILE__) .'/example.jpg';
$im = imagecreatefromjpeg($filename);
$webp =imagewebp($im, str_replace('jpg', 'webp', $filename));
imagedestroy($im);
var_dump($webp);
$webp は true を返しますが、Chrome で webp-image を表示しようとすると、空白が表示されますが、正しいサイズで表示されます。代わりに画像を読み込み、PHP でヘッダーを設定すると (以下を参照)、表示されますが、色が間違っています (黄色が多すぎます)。
$im = imagecreatefromwebp('example.webp');
header('Content-Type: image/webp');
imagewebp($im);
imagedestroy($im);
コマンドラインで同じ画像を変換すると、期待どおりに機能します。
cwebp -q 100 example.jpg -o example.webp
これを Ubuntu 14、Apache 2.4.7、および PHP 5.5.9-1ubuntu4.4 でテストしています。