функция (достоверно) проверяет, является ли файл картинкой
возвращает или миметип картинки или false
/**
* @param string $file
* @return string|bool
*/
function is_img($file)
{
$image_valid_ext = [
'jpg',
'jpeg',
'png',
'gif',
'webp'
];
$image_valid_mime = [
'image/webp',
'image/png',
'image/jpeg',
'image/gif',
'image/bmp'
];
if(file_exists($file)){
$ext = strtolower(pathinfo($file, PATHINFO_EXTENSION));
if(in_array($ext, $image_valid_ext)){
$real_file_extension = image_type_to_mime_type(exif_imagetype($file));
if(in_array($real_file_extension, $image_valid_mime)){
return $real_file_extension;
}else{
return false;
}
}else{
return false;
}
}else{
return false;
}
}if(is_img('storage/image.png')){
echo'is image';
}else{
echo'is not image';
}