【PHP8.x】image_type_to_extension関数の使い方

作成日: 更新日:

image_type_to_extension関数は、指定された画像タイプに対応するファイル拡張子を取得する関数です。PHPで画像を扱う際、その画像がGIF、JPEG、PNGといったどの形式であるかを知る必要が生じることがあります。この関数は、getimagesize()関数などが返すIMAGETYPE_XXX形式の定数で表される画像タイプ(例えばIMAGETYPE_GIFIMAGETYPE_JPEG)を受け取り、それに対応するファイル拡張子を文字列として返します。

例えば、IMAGETYPE_GIFを指定すれば.gifIMAGETYPE_PNGを指定すれば.pngといった文字列が得られます。これにより、アップロードされた画像のファイル名を生成する際や、画像ファイルのMIMEタイプを推測する際に役立てることができます。

この関数は、第2引数にオプションでtrueまたはfalseを指定できます。デフォルトはtrueで、返される拡張子には先頭にピリオド(.)が含まれます。falseを指定すると、ピリオドなしの拡張子(例: gifjpeg)が返されます。

もし、サポートされていない画像タイプが指定された場合や、無効な画像タイプが渡された場合は、falseを返します。この挙動を利用することで、プログラムは未知の画像形式に対して適切に対応することができます。画像処理を伴うアプリケーション開発において、ファイルの取り扱いをより簡潔かつ正確に行うために重要な役割を果たす関数です。

基本的な使い方

構文(syntax)

$extension = image_type_to_extension(IMAGETYPE_JPEG, false);

引数(parameters)

int $image_type, bool $include_dot = true

  • int $image_type: 画像の種類を示す整数定数 (例: IMAGETYPE_JPEG, IMAGETYPE_PNG)
  • bool $include_dot = true: 拡張子の先頭にドット (.) を含めるかどうかを指定する真偽値。true の場合は含め、false の場合は含めません。

戻り値(return)

string|false

指定された画像タイプ定数に対応するファイル拡張子を文字列で返します。対応する拡張子がない場合は false を返します。