在 s3 上读取 zip 文件,无需下载或保存在 Laravel 或 PHP 中

Read zip file on s3 without download or save in Laravel or PHP

提问人:Blu Ycw 提问时间:7/21/2023 最后编辑:N69SBlu Ycw 更新时间:7/21/2023 访问量:167

问:

我需要在不下载或保存的情况下获取上传到 s3 的 zip 文件中的图像文件名,这可能吗?目前,如果文件存储在本地,我只能做到这一点。

这是我的代码:

$z = new ZipArchive();
$url = public_path('storage\\' . $asset->getRawOriginal('path'));

$names = [];
if ($z->open($url)) {
    for ($i = 0; $i < $z->numFiles; $i++) {
        $stat = $z->statIndex($i);
        array_push($names, basename($stat['name']));
    }
}
natsort($names);
$names = array_values($names);
return $names;

有什么方法可以做到这一点吗?

PHP Laravel Amazon-S3 ziparchive

评论

0赞 N69S 7/21/2023
另一种解决方案是不要将其存储为 zip 格式,只需将其解压缩到 S3 上的文件夹中即可。
0赞 Blu Ycw 7/21/2023
@N69S因为需要同时上传 100 个文件,不压缩它似乎不是一个好的选择
0赞 symcbean 7/21/2023
您可以使用同步在单个操作中上传多个文件。

答: 暂无答案