定義
getimagesize - 獲取圖片尺寸
語法
getimagesize ( string $filename [, array &$imageinfo ] ) : array
返回一個 關聯 數組,包含指定圖片的相關信息。
$filename 可以是本地也可以是遠程圖片。
$imageinfo 用於獲取更多擴展信息,只支持 JFIF 文件。
返回值
返回數組中最多可以包含7個元素,分別如下:
索引 0
,1
分別是寬度和高度;
索引 2
是圖片的類型,是格式如 IMAGETYPE_XXX 的預定義常量之一,如IMAGETYPE_GIF, IMAGETYPE_JPEG, IMAGETYPE_PNG, IMAGETYPE_BMP;
索引 3
是寬高的拼接好的字符串,如height="yyy" width="xxx",方便直接用在img標簽里;
mime
是對應的MIME 類型,可用於http頭信息,如 header("Content-type: {$size['mime']}");
;
channels
will be 3 for RGB pictures and 4 for CMYK pictures.
bits
is the number of bits for each color.
示例
$image = 'https://avatars2.githubusercontent.com/u/646129?s=52&v=4';
$data = getimagesize($image, $info);
print_r($data);
print_r($info);
輸出
Array
(
[0] => 52
[1] => 52
[2] => 2
[3] => width="52" height="52"
[bits] => 8
[channels] => 3
[mime] => image/jpeg
)
Array
(
[APP0] => JFIF``
)
總結
一般常用於獲取圖片寬高,其他信息基本用不到。
名稱是image size,但不知道返回的是圖片的實際大小還是圖片的尺寸,而且既然已經返回這么多信息了,為啥不返回圖片的字節大小呢,雖然可以通過其他方式獲取,但如果能一步到位豈不更省事。