是否有可能检查图像类型是否从.png
重命名为.jpg
?
我需要这个是因为当我使用一个调整大小的功能时,如果上传的图片从.png重命名为.jpg,我的网站就会停止工作(我编写的代码只接受.jpg图片)。
89 50 4E 47 0D 0A 1A 0A
这些是PNG文件的签名。如果一个.jpg文件以这些字节开头,那么它就不是一个jpg文件。
getimagesize将包含有关图像类型的信息:
$info = getimagesize('file.png');
if($info[2] == IMAGETYPE_JPEG){
}
您可以使用exif_imagetype()函数来检查图像的类型。
$image_type = exif_imagetype($filename);
例子:
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'The picture is not a gif';
}
?>
是的,您可以使用这个
if($_FILES["imagefile"]["type"] == "image/jpeg")
{
return true;
}
else if($_FILES["imagefile"]["type"] == "image/png")
{
return false;
}
尝试使用file
命令。
当unknownimage
是JPG图像时:
$ file unknownimage
unknownimage: JPEG image data, baseline, precision 8, 400x400, frames 3
当 unknownimage
文件是 PNG 图像时:
$ file unknownimage
unknownimage: PNG image data, 779 x 701, 8-bit/color RGBA, non-interlaced