首页 > 编程笔记
PHP getimagesize():获取图像大小
PHP getimagesize() 函数用来获取图像的大小,其语法如下:
getimagesize() 函数将测定任何 GIF、JPG、PNG、SWF、SWC、PSD、TIFF、BMP、IFF、JP2、JPX、JB2、JPC、XBM 或 WBMP 图像文件的大小,并返回图像的尺寸、文件类型和一个可以用于普通 HTML 文件中 IMG 标记的 height/width 文本字符串。
如果不能访问 filename 指定的图像或者不是有效的图像,getimagesize() 将返回 false 并产生一条 E_WARNING 级的错误。
getimagesize() 函数返回一个至少具有 4 个元素的数组:
getimagesize() 还会返回额外的参数 mime,符合该图像的 MIME 类型。此信息可以用来在 HTTP Content-type 头信息中发送正确的信息。
对于 JPG 图像,还会多返回两个索引:channels 和 bits。对于 RGB 图像,channels 值为 3;对于 CMYK 图像,channels 值为 4。bits 是每种颜色的位数。
示例如下:
array getimagesize ( string $filename [, array &$imageinfo ] )
getimagesize() 函数的参数和返回结果相同。getimagesize() 函数将测定任何 GIF、JPG、PNG、SWF、SWC、PSD、TIFF、BMP、IFF、JP2、JPX、JB2、JPC、XBM 或 WBMP 图像文件的大小,并返回图像的尺寸、文件类型和一个可以用于普通 HTML 文件中 IMG 标记的 height/width 文本字符串。
如果不能访问 filename 指定的图像或者不是有效的图像,getimagesize() 将返回 false 并产生一条 E_WARNING 级的错误。
getimagesize() 函数返回一个至少具有 4 个元素的数组:
- 索引 0 包含图像宽度的像素值。
- 索引 1 包含图像高度的像素值。
- 索引 2 是图像类型的标记:1=GIF,2=JPG,3=PNG,4=SWF,5=PSD,6=BMP,7=TIFF(intel byte order),8=TIFF(motorola byte order),9=JPC,10=JP2,11=PX,12=JB2,13=SWC,14=IFF,15=WBMP,16=XBM。这些标记与 PHP 4.3.0 新加的 IMAGETYPE 常量对应。
- 索引 3 是文本字符串,内容为 "height="yyy"width="xxx"",可直接用于 IMG 标记。
getimagesize() 还会返回额外的参数 mime,符合该图像的 MIME 类型。此信息可以用来在 HTTP Content-type 头信息中发送正确的信息。
对于 JPG 图像,还会多返回两个索引:channels 和 bits。对于 RGB 图像,channels 值为 3;对于 CMYK 图像,channels 值为 4。bits 是每种颜色的位数。
示例如下:
<?php //echo phpinfo(); echo "<pre>"; print_r(getimagesize('123.jpg')); ?>执行以上程序的输出结果如下:
Array
(
[0] => 961
[1] => 640
[2] => 2
[3] => width="961" height="640"
[bits] => 8
[channels] => 3
[mime] => image/jpeg
)