Laravel 5.5 - 将图像存储到 S3

标签 laravel laravel-5 amazon-s3

我目前正在像这样将 ImageMagick 创建的图像写入 Laravel 5.5 应用程序中的本地存储...

$imagick->writeImages(storage_path('app/files/' . $tempfoldername . '_' . $title . '/' . $title . '_page.jpg'), false);

我现在已经在 AWS 上设置了一个 S3 存储桶来存储图像,我如何修改上述语句以将它们存储在存储桶中?

我已经使用 S3 详细信息设置了 Laravel,并且可以成功读取和写入 S3 存储桶。

我应该照原样做,然后再移动它们吗?或者我可以直接从 imagemagick 声明中完成吗?

最佳答案

由于您正在使用图像魔术处理图像,因此您有 2 个选择:

  • 第一个选项 图片存放在本地文件夹,然后上传,然后取消链接

    Storage::disk('s3')->put($title . '_page.jpg', new File($filePath));

    取消链接($文件路径);

  • 或者使用下面的方法将图片直接添加到s3

    Storage::disk('s3')->put($title . '_page.jpg', $imagick->getImageBlob());

关于Laravel 5.5 - 将图像存储到 S3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49495358/

相关文章:

javascript - Laravel x-editable CRSF 问题

php - Laravel 5.5 队列 : No connector for []

arrays - 在vuejs中正确显示 "created_at"字段

javascript - 日期 不专门在 laravel 中工作

php - 从flash上​​传位图数据到laravel路由

php - 使用连接表的 Laravel Nova 过滤器

amazon-web-services - 构建后自动将静态网站文件部署到 S3

Laravel 5.7 - 数据透视表 Attach()

javascript - 从 Angular JS 中的 aws s3 存储桶下载文件

amazon-web-services - BigQuery Transfer Service 不会从 S3 复制行