トップへ(mam-mam.net/)

PHPでjpgやpng画像をwebpに変換する ~サンプルソースコード

PHPでjpgやpng画像をwebpに変換する ~サンプルソースコード

PHPでWebP画像に変換するには
imagewebp(GdImageオブジェクト, "保存先ファイル名" 又は null [, 品質0~100] )
を使います。

jpeg画像をwebp画像に変換する

画像ファイル「img.jpg」を「img.webp」に変換します。

<?php
  // 「img.jpg」画像ファイルを読む
  $img=@imagecreatefromjpeg("img.jpg");

  // WebP変換して「img.webp」ファイルに保存します
  if($img){
    imagewebp($img, "img.webp");
  }

  // 破棄
  imagedestroy($img);

画像ファイル「img.jpg」をwebpに変換して表示します。

<?php
  // 「img.jpg」画像ファイルを読む
  $img=@imagecreatefromjpeg("img.jpg");

  // WebP変換して出力します
  if($img){
    header("Content-Type: image/webp");
    imagewebp($img ,null);
  }

  // 破棄
  imagedestroy($img);

png画像をwebp画像に変換する

画像ファイル「img.png」を「img.webp」に変換します。

<?php
  // 「img.png」画像ファイルを読む
  $img=@imagecreatefrompng("img.png");

  // WebP変換して「img.webp」ファイルに保存します
  if($img){
    imagewebp($img, "img.webp");
  }

  // 破棄
  imagedestroy($img);

画像ファイル「img.png」をwebpに変換して表示します。

<?php
  // 「img.jpg」画像ファイルを読む
  $img=@imagecreatefrompng("img.png");

  // WebP変換して出力します
  if($img){
    header("Content-Type: image/webp");
    imagewebp($img ,null);
  }

  // 破棄
  imagedestroy($img);

参考

AVIF画像ファイルに変換する場合は
imageavif(GdImageオブジェクト, "保存先ファイル名" 又は null [, 品質0~100] [,スピード0~10] )
を使います。

<?php
  // 「img.jpg」画像ファイルを読む
  $img=@imagecreatefromjpeg("img.jpg");

  // AVIF変換して「img.avif」ファイルに保存します
  if($img){
    imageavif($img, "img.avif");
  }

  // 破棄
  imagedestroy($img);