2013-06-30 113 views
2

我上傳了tif文件,但我總是收到echo'上傳的文件類型不受支持'。爲什麼? 我如何檢查文件是否是按照我的支持的文件如何檢查上傳的文件是否是受支持的文件

//image types supported 
$types = array(IMAGETYPE_JPEG, IMAGETYPE_PNG, IMAGETYPE_TIFF); 

list($width, $height, $type) = getimagesize($_FILES[$name]['tmp_name']); 
$ext = image_type_to_extension($type); // get the extension 

if (!isset($types[$type])) { 
    echo = 'The uploaded file type is not supported'; 
} else 
    echo = 'All good!'; 
} 

回答

2

你檢查是否$types有一個關鍵$type而不是值$type。而是使用in_array。
也構成http://www.php.net/manual/en/function.image-type-to-mime-type.php,沒有IMAGETYPE_TIFF而是IMAGETYPE_TIFF_IIIMAGETYPE_TIFF_MM

$types = array(IMAGETYPE_JPEG, IMAGETYPE_PNG, IMAGETYPE_TIFF_II, IMAGETYPE_TIFF_MM); 
... 
if (in_arry($type,$types)) { 
+0

是做到了!謝謝...只是改正了錯誤:if(!in_array($ type,$ types)){...} – Marco

+0

@Marco不客氣 – Musa

2

的陣列支持,我認爲你的類型是不正確的請嘗試以下幾種類型。

IMAGETYPE_TIFF_II  => 'tiff',  ### 7 = TIFF  (intel byte order) 
IMAGETYPE_TIFF_MM  => 'tiff',  ### 8 = TIFF  (motorola byte order) 
相關問題