Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在AWS S3中获取图像的尺寸,我';我是否可以使用Laravel中的存储门面进行访问?_Laravel_Amazon Web Services_Amazon S3_Getimagesize_Laravel Storage - Fatal编程技术网

如何在AWS S3中获取图像的尺寸,我';我是否可以使用Laravel中的存储门面进行访问?

如何在AWS S3中获取图像的尺寸,我';我是否可以使用Laravel中的存储门面进行访问?,laravel,amazon-web-services,amazon-s3,getimagesize,laravel-storage,Laravel,Amazon Web Services,Amazon S3,Getimagesize,Laravel Storage,我在AWS S3中存储了一些图像,我正在使用Laravel中的存储外观将它们显示在网页上 在一些情况下,我希望获得一些图像的尺寸,并将这些尺寸存储在DB中 我曾考虑在PHP中使用getimagesize函数,但这些图像不是公开的,只能通过存储外观访问 如何获取这些图像的尺寸?多谢各位 编辑:我应该提到,这些图像处理都是为DB迁移而进行的,因此使用像JS这样的web前端解决方案来获取图像尺寸是不现实的。我提出了一个似乎可行的解决方案。基本上,我使用存储外观获取文件的二进制文件,然后使用imagec

我在AWS S3中存储了一些图像,我正在使用Laravel中的存储外观将它们显示在网页上

在一些情况下,我希望获得一些图像的尺寸,并将这些尺寸存储在DB中

我曾考虑在PHP中使用
getimagesize
函数,但这些图像不是公开的,只能通过存储外观访问

如何获取这些图像的尺寸?多谢各位


编辑:我应该提到,这些图像处理都是为DB迁移而进行的,因此使用像JS这样的web前端解决方案来获取图像尺寸是不现实的。

我提出了一个似乎可行的解决方案。基本上,我使用存储外观获取文件的二进制文件,然后使用
imagecreatefromstring
imagesx
imagesy
函数获取图像的宽度和高度

下面是一个例子:

$contents = Storage::get($storageFilePath);
$im = imagecreatefromstring($contents);
$width = imagesx($im) ?? null;
$height = imagesy($im) ?? null;

我想出了一个似乎有效的解决办法。基本上,我使用存储外观获取文件的二进制文件,然后使用
imagecreatefromstring
imagesx
imagesy
函数获取图像的宽度和高度

下面是一个例子:

$contents = Storage::get($storageFilePath);
$im = imagecreatefromstring($contents);
$width = imagesx($im) ?? null;
$height = imagesy($im) ?? null;

您还可以使用开源库,它使用GD库和Imagick:

$image = \Image::make(Storage::get($storageFilePath));
$width = $image->width();
$height = $image->height();

您还可以使用开源库,它使用GD库和Imagick:

$image = \Image::make(Storage::get($storageFilePath));
$width = $image->width();
$height = $image->height();

好主意。谢谢,好主意。谢谢