AWS SDK PHP版本2-检索图像尺寸



是否可以检索存储在Amazon S3上的图像的尺寸?

如果答案是否定的,除了将图像下载到我的服务器上,听起来效率低下,还有其他方法吗?

我正在使用AWS SDK的版本2用于php。

我一直在查看以下代码返回的内容,但似乎没有给出尺寸。

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

我对SDK2并不100%熟悉。使用1.5,您可以这样做

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

我认为,只要您可以公开访问图像(或者您必须找到授权URL)

显然,必须启用您的PHP来打开远程文件。

我同意DB缓存。我通过检查MySQL的匹配项来运行每个图像文件名。如果找到一个,它将返回宽度,高度和预制的Sizetag,准备出发。如果找不到图像和大小,它使用getimagesize()返回相同的信息,下次存储的信息。我还以调整大小的方法构建了,如果我想骗一点并在即时拍摄sizetag(而不是文件)大小。

我不知道该信息是否比getImagesize()更快。S3非常快。

由于缺乏响应,我会认为这是不可能的... R3LALLY不想使用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>

最新更新