PHP检查是否为非空、非零
我使用getimagesize函数获得图像的宽度和高度,如下所示:PHP检查是否为非空、非零,php,Php,我使用getimagesize函数获得图像的宽度和高度,如下所示: list($width,$height) = getimagesize($source_pic); 如何使用IF条件检查执行的getimagesize函数是否没有错误,以及$width和$height是否得到了非空、非零值 if ($width === NULL) { //handle error } 如果出现错误getimagesize返回FALSE,而不是数组,那么列表赋值将导致变量为NULL,这就足够了: if
list($width,$height) = getimagesize($source_pic);
如何使用IF条件检查执行的getimagesize函数是否没有错误,以及$width和$height是否得到了非空、非零值
if ($width === NULL) {
//handle error
}
如果出现错误getimagesize
返回FALSE
,而不是数组,那么列表
赋值将导致变量为NULL
,这就足够了:
if ($size = getimagesize($source_pic)) {
list($width,$height) = $size;
if($height > 0 && $width > 0) {
// do stuff
}
}
list($width, $height) = getimagesize($source_pic);
if( $width>0 && $height>0 ){
// Valid image with known size
}
如果它不是有效图像,$width和$height都将NULL
。如果它是一个有效的图像,但PHP无法确定它的维度,那么它们将是0
注:
某些格式可能不包含图像或图像
可能包含多个图像。在这些
在某些情况下,getimagesize()可能不是
能够正确地确定图像
尺寸。getimagesize()将返回零
这些情况下的宽度和高度
请注意,此答案不符合所有问题的要求。特别是,它不会检测到零值。您仍然需要针对零值进行测试。根据手册,在某些情况下,您可以获得这样的值。
$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
}