2016-06-28 55 views
2

getimagesize()函數返回FALSE的某些圖像。getimagesize()函數不適用於某些圖像

例子: enter image description here

$path1 = getcwd().'/images/communities/29/eagle-ridge-26.jpg'; 
$vals_arr1 = getimagesize($path1); 

$path2 = 'http://homematrix.oskyserver.com/images/communities/29/ 
               eagle-ridge-26.jpg'; 
$vals_arr2 = getimagesize($path2); 

在這兩種情況下,它返回FALSE,我已搜查,但沒有找到一個好的解決辦法呢。

+0

請檢查路徑(打印$ PATH1)無論是否正確? –

+0

我在使用getimagesize($ path1)之前使用過file_exists($ path1),file_exists返回true。但getimagesize返回false – Akhil5

+0

是的你是正確的,你的例子不在我的本地系統中工作。我會檢查,如果我得到結果,然後讓你知道。 –

回答

0

其工作:

您必須提供絕對路徑:

例如:

$path1 = getcwd().'/images/logo.jpg'; 
$vals_arr1 = getimagesize($path1); 
echo "<pre>";var_dump($vals_arr1);echo "</pre>"; 

$path2 = __DIR__.DIRECTORY_SEPARATOR.'images/logo.jpg'; 
$vals_arr2 = getimagesize($path2); 
echo "<pre>";var_dump($vals_arr2);echo "</pre>"; 

結果:

array(7) { 
    [0]=> 
    int(288) 
    [1]=> 
    int(70) 
    [2]=> 
    int(2) 
    [3]=> 
    string(23) "width="288" height="70"" 
    ["bits"]=> 
    int(8) 
    ["channels"]=> 
    int(3) 
    ["mime"]=> 
    string(10) "image/jpeg" 
} 
array(7) { 
    [0]=> 
    int(288) 
    [1]=> 
    int(70) 
    [2]=> 
    int(2) 
    [3]=> 
    string(23) "width="288" height="70"" 
    ["bits"]=> 
    int(8) 
    ["channels"]=> 
    int(3) 
    ["mime"]=> 
    string(10) "image/jpeg" 
} 
+0

感謝您的快速回復,但它不適用於我在那裏給出的圖像。就像我在問題中解釋的那樣,它只能用於某些圖像,您是否可以嘗試示例圖像,並讓我知道它是否適合您。謝謝 – Akhil5

+0

@ Akhil5此代碼是正確的「$ path1 = getcwd()。'/ images/communities/29/eagle-ridge-26.jpg'; $ vals_arr1 = getimagesize($ path1);」但是請打印「$ path1」並檢查路徑是否正確?請嘗試。第二個是沒有工作。 –

+0

是的。路徑是正確的,file_exists()返回true。 – Akhil5

相關問題