PHPのgetimagesize()関数の使い方!画像サイズ情報を取得する方法を解説
PHPのgetimagesize()関数とは
PHPのgetimagesize()関数は、指定した画像ファイルのサイズ(幅・高さ)などの情報を取得するために使用される関数です。画像の寸法だけでなく、画像形式やMIMEタイプなども取得できるため、画像を扱うWebアプリケーション開発で非常に便利な関数となっています。
構文
getimagesize(file_name, img_info)
パラメータ
file_name:対象となる画像ファイルのパスを指定します。ローカルファイルだけでなく、URLでリモート画像を指定することも可能です。
img_info:画像ファイルから拡張情報(JFIF形式の詳細情報など)を抽出する場合に使用するオプションの引数です。JFIFファイルのみ対応しています。
戻り値
getimagesize()関数は、取得に成功した場合、以下の要素を含む配列を返します。
- 画像の幅(ピクセル)
- 画像の高さ(ピクセル)
- 画像の種類を示す番号(IMAGETYPE定数)
- HTMLのimgタグでそのまま使えるwidth属性・height属性の文字列
- ビット数(bits)
- MIMEタイプ(mime)
なお、画像ファイルが存在しない場合や読み取りに失敗した場合は、falseが返されます。
使用例
次のコードは、getimagesize()関数を使って画像のサイズ情報を取得し、表示する例です。
<?php
$image_info = getimagesize("https://www.tutorialspoint.com/images/tp-logo-diamond.png");
print_r($image_info);
?>
実行結果
上記コードの出力は以下のようになります。
Array ( [0] => 205 [1] => 120 [2] => 3 [3] => width="205" height="120" [bits] => 8 [mime] => image/png)
この出力から、画像の幅が205px、高さが120pxであること、画像タイプが「3」(PNG形式)であること、MIMEタイプが「image/png」であることが確認できます。インデックス[3]にはHTMLタグで直接利用できる文字列が格納されているため、動的にimgタグを生成する際にも活用できます。
-
PHPのimageflip()関数の使い方とサンプルコード
imageflip()関数は、指定されたモードに従って画像を反転させるために使用されるPHPの組み込み関数です。水平方向、垂直方向、あるいはその両方への反転が可能で、画像処理を行う際に非常に便利な機能です。 構文 bool imageflip(img, mode) パラメータ img: imagecreatetruecolor()などの画像作成関数によって生成された画像リソースを指定します。 mode: 反転のモードを指定します。指定できる値は以下の3種類です。 modeに指定できる値 IMG_FLIP_HORIZONTAL:画像を水平方向(左右)に反転します。 IMG_FLIP_VER
-
PHPのimagecreate()関数とは?使い方とサンプルコードを解説
PHPのimagecreate()関数は、新しい画像(イメージリソース)を作成するために使用されるGDライブラリの関数です。パレットベースの画像を生成し、その後の描画処理やテキスト追加などに利用できます。imagecreate()とimagecreatetruecolor()の違い画像を作成する際には、imagecreate()よりもimagecreatetruecolor()を使用することが推奨されています。これは、imagecreatetruecolor()で作成できるフルカラー(トゥルーカラー)画像の方が高品質であり、画像処理を最高品質の状態で行えるためです。特にグラデーションや写真のよ