【PHP】画像サイズ(width・height)を取得する【getimagesize】
※本ページのリンクにはプロモーションが含まれています。
こんにちは、Ryohei(@ityryohei)です!
本記事では、PHPのgetimagesize()を使って画像サイズ(width・height)を取得する方法をご紹介しています。
PHPで画像サイズを取得するにはどうすればいいの?
上記の疑問にお答えします。
では、解説していきます。getimagesize()を使用する
PHPで画像サイズを取得する場合、組み込み関数のgetimagesize()を使用します。getimagesize()は、名前の通り画像サイズを取得する関数です。getimagesize()を使用することで、画像の幅や高さ、形式やMIMEタイプ等を取得することができます。
getimagesize()で画像サイズを取得する
実際にgetimagesize()で画像サイズを取得してみます。引数にURLや相対パスで画像ファイルを指定し、サイズ等の情報を取得します。
<?php $image_file = 'test.jpg'; $image_size = getimagesize($image_file); var_dump($image_size);
実行すると、戻り値として下記のような配列を取得できます。
array(7) {
[0]=>
int(5760)
[1]=>
int(3840)
[2]=>
int(2)
[3]=>
string(26) "width="5760" height="3840""
["bits"]=>
int(8)
["channels"]=>
int(3)
["mime"]=>
string(10) "image/jpeg"
}
配列に格納されているキー(添字)と値は下記の通りです。
| キー | 説明 |
|---|---|
| 0 | 画像の幅 |
| 1 | 画像の高さ |
| 2 | 画像の形式(参考) |
| 3 | imgタグで直接利用できる文字列 例:width="1920" height="1080" |
| bits | 個々の色のビット数 |
| channels | 画像のチャンネル 例:RGB:3/CMYK: 4 |
| mime | 画像のMIMEタイプ 例:image/jpeg" |
これで画像サイズ等の情報を取得することができました。画像の幅と高さはもちろんですが、MIMEタイプやimgタグにそのまま出力できる文字列なんかも取得できるのは便利ですね。
最後に
getimagesize()は名前の通り画像の幅や高さといった情報をまとめて取得することができる関数です。引数に画像ファイルを指定するだけなので、使い方もわかりやすくていいいですね。画像サイズを使って処理を作成する場合に重宝する関数だと思います。
以上、PHPのgetimagesize()を使って画像サイズ(width・height)を取得する方法のご紹介でした!