finfo を使用して、ファイルをサーバーにアップロードする前に画像ファイルかどうかを判断しようとしています。私の質問は、以下のコードは jpeg 専用ですが、許可する他のファイル タイプもあるということです。だから私は2つの質問があります:
質問1:
finfo を使用して、gif、tiff、png、ico などの複数のファイル タイプをチェックするにはどうすればよいですか。
質問 2: が画像であるかどうかを確認するために、他の検証方法を使用する必要がありますか?
以下はコードです:
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mimetype = image_type_to_mime_type(exif_imagetype('/path/to/file.jpg'));
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/tiff")
|| ($_FILES["file"]["type"] == "image/png")
|| ($_FILES["file"]["type"] == "image/bmp")
|| ($_FILES["file"]["type"] == "image/ico")
{
if ($finfo !== FALSE){
move_uploaded_file($_FILES["fileImage"]["tmp_name"],
"ImageFiles/" . $_FILES["fileImage"]["name"]);
$result = 1;
@finfo_close($finfo);
}
}