2012-12-19 36 views
0

是否可以檢索存儲在Amazon S3上的圖像的尺寸?AWS開發工具包PHP版本2 - 檢索圖像尺寸?

如果答案是否定的,除了將圖像下載到我的服務器以外,是否還有其他解決方法?

我正在使用適用於PHP的AWS開發工具包版本2。

我一直在尋找從下面的代碼返回的東西,但似乎沒有給出尺寸。

$result = $s3->getObject(array(
    'Bucket' => 'BUCKET_NAME', 
    'Key' => 'KEY_NAME' 
)); 

var_dump($result); 

回答

0

由於缺乏響應的,我會假設這是不可能的......沒r3ally想用JavaScript來做到這一點,但是這是我做到了。

<img src="image.jpg" id="image" /> 

<script> 
// This runs after the image has loaded 
$('#image').load(function() { 
    // Use the below code to get the height and width 
    // document.getElementById('image').width 
    // document.getElementById('image').height 
}); 
</script> 
0

我對SDK2不是100%熟悉。 1.5你可以這樣做

getimagesize($s3->get_object_url($bucket,$filename)); 

我覺得只要可以公開訪問圖像這仍然是可能的(或者你必須找到自己的方式圍繞授權網址)

顯然,你的php必須啓用打開遠程文件。

0

我同意數據庫緩存。我通過一個檢查mysql匹配的類來運行每個圖像的文件名。如果找到一個,它會返回寬度,高度和一個預先格式化的sizetag準備就緒。如果未找到圖像和大小,它會使用getimagesize()返回它下次存儲的相同信息。我也建立了一個調整大小的方法,如果我想欺騙一下,並按比例調整大小(但不是文件)的大小。

我不知道存儲信息是否比下載時的getimagesize()更快。 S3非常快。