PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

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タグを生成する際にも活用できます。

  1. PHPのimageflip()関数の使い方とサンプルコード

    imageflip()関数は、指定されたモードに従って画像を反転させるために使用されるPHPの組み込み関数です。水平方向、垂直方向、あるいはその両方への反転が可能で、画像処理を行う際に非常に便利な機能です。 構文 bool imageflip(img, mode) パラメータ img: imagecreatetruecolor()などの画像作成関数によって生成された画像リソースを指定します。 mode: 反転のモードを指定します。指定できる値は以下の3種類です。 modeに指定できる値 IMG_FLIP_HORIZONTAL:画像を水平方向(左右)に反転します。 IMG_FLIP_VER

  2. PHPのimagecreate()関数とは?使い方とサンプルコードを解説

    PHPのimagecreate()関数は、新しい画像(イメージリソース)を作成するために使用されるGDライブラリの関数です。パレットベースの画像を生成し、その後の描画処理やテキスト追加などに利用できます。imagecreate()とimagecreatetruecolor()の違い画像を作成する際には、imagecreate()よりもimagecreatetruecolor()を使用することが推奨されています。これは、imagecreatetruecolor()で作成できるフルカラー(トゥルーカラー)画像の方が高品質であり、画像処理を最高品質の状態で行えるためです。特にグラデーションや写真のよ