finfo를 사용하여 파일을 서버에 업로드하기 전에 이미지 파일인지 확인하려고합니다. 내 질문에 비록 아래의 코드는 jpeg에 대해서만 있지만 다른 파일 형식이 있습니다.finfo를 사용하여 여러 파일 형식을 결정하는 방법은 무엇입니까?
질문 1 : 그래서 나는이 개 질문이
나는 그런 질환자 등 GIF, TIFF, PNG, 여러 파일 형식을 확인하기 위해 finfo 사용할 수있는 방법질문 2 : 내가해야합니까 다른 유효성 검사 방법을 사용하여 이미지인지 확인하거나 내가 아래에있는 것으로 충분합니까? 당신이 PHP 5.2 이하를 사용하는 경우,
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mimetype = finfo_file($finfo, '/path/to/file.jpg';
finfo_close($finfo);
if (substr ($mimetype, 0, 5) == 'image') {
// its an image
}
else {
// its not an image!
}
두 번째 옵션 :
$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);
}
}
코드에 정확히 무엇이 있습니까? 이미 여러 파일 형식을 검사하고 있지 않습니까? – Jeroen