2015-04-04 82 views
-1

我需要遠離來查看S3雲上是否存在圖像,我構建了一個應用程序來排序從本地到網絡的合併數據,它實際上是簡單,我幾乎完成了,從本地應用程序我得到一個JSON文章...所以在該JSON我得到一個圖像名稱「prety_image.jpg」,然後保存到數據庫,但在我保存之前,我需要檢查該圖像是否存在於S3雲中,我有S3網址... //foo.cloudfront.net/並顯示圖像,我所做的只是添加圖像的名稱...對於我所擁有的看到的是,如果圖像確實存在其顯示圖像..但如果圖像不存在,我發現了一個XML文件
檢查文件是否是aws上的圖像或xml S3

<Error> 
<Code>AccessDenied</Code> 
<Message>Access Denied</Message> 
<RequestId>13A57760</RequestId> 
<HostId>3/uj7Ro77bGnjzGZVABUXvVVg4=</HostId> 
</Error> 

所以我要的是個如果我得到這個錯誤,然後保存一個空白的圖像,如果沒有,然後只是保存圖像...但我不知道該怎麼做...我沒有使用aws sdk,我下載了但我不' t知道該怎麼做...我已經使用其他SDK的,但AWS SDK只是我的大腦的方法..

回答

0

我找到一個解決方案,而不使用AWS SDK,其實很簡單...
這個功能是我的類中,但我只是要放在這裏......

function httperr($url) 
    { 
     $headers = get_headers($url); 
     return substr($headers[0], 9, 3); 
    } 

的我只是把它這樣

if (intval(httperr(S3AWS . $img)) === 200) { 
    $image = '<img src="'.S3AWS . $img.'" > <br>- Exist'; 
} else { 
    $image = 'No image here...'; 
} 

S3AWS是網址,$ img只是圖像的名稱...所以如果標題是好的200那麼圖像確實存在,如果不是那麼沒有圖像,並且工作得很好.. 。

相關問題