我使用getimagesize函数获取图像的宽度和高度,如下所示:
list($width,$height) = getimagesize($source_pic);
如何使用IF条件检查getimagesize函数是否正确执行且$ width和$ height是否为非空,非零值?
答案 0 :(得分:6)
if ($size = getimagesize($source_pic)) {
list($width,$height) = $size;
if($height > 0 && $width > 0) {
// do stuff
}
}
答案 1 :(得分:3)
if ($width === NULL) {
//handle error
}
如果有错误getimagesize
返回FALSE
,而不是数组,那么list
分配将导致变量为NULL
。
答案 2 :(得分:1)
这应该足够了:
list($width, $height) = getimagesize($source_pic);
if( $width>0 && $height>0 ){
// Valid image with known size
}
如果它不是有效图像,则$ width和$ height将为NULL
。如果它是有效的图像,但PHP无法确定其尺寸,则它们将为0
。
某些格式可能不包含图片或 可能包含多个图像。在这些 例如,getimagesize()可能不是 能够正确地确定图像 尺寸。 getimagesize()将返回零 在这些情况下,宽度和高度。
答案 3 :(得分:1)
$size = getimagesize('image.jpg');
list($height,$width) = getimagesize('image.jpg');
if($height>0 && $width>0){
//it comes into if block if and only if both are not null
}