我当然可以通过exif_imagetype或getimagesize检查MIME类型并逐个检查MIME类型...但我只想要任何图像 - 我不在乎什么类型......所以我想知道 - 我可以做这样的事情吗:?
// PHP manual says: Determine the type of an image
// and that Imagetype Constants are 1-17 so :
$tmp_imagetype = exif_imagetype('image.gif');
if ( ($tmp_imagetype>=1) && ($tmp_imagetype<=17) ) {
echo "It is an image!";
} else{
echo "It isn't an image.";
}
我可以依靠吗?
当文件不是图像时会发生什么情况?它只会返回非图像常量值,还是会抛出警告或错误
谢谢
你真的不需要所有的东西,你只需要以下内容,因为如果不是图像exif_imagetype
则返回 false
if($imagetype = exif_imagetype('image.gif')){
// its an image
} else {
// its not an image
}
您可以检查函数是否(完全)返回 FALSE:
$file="SOMEFILE";
if(exif_imagetype($file)===FALSE){
print("NOT IMAGE");
}else{
print("IMAGE");
}
你为什么不把所有类型的图像放在一个数组中,然后用下面的代码检查它:
if(in_array($value, $array)) {
//it's an image! Hooray!
}else {
//it's not.
}