如何将文件从我的本地存储上传到 S3?
How to upload file from my local storage into S3?
查看一些示例 Laravel 如何与 AWS S3 服务一起工作,我看到代码示例如下:
$path = $request->file('image')->store('images', 's3');
但是当我尝试从我的本地存储上传文件时:
$adImageDestDirectory = '/public/' . ‘subdirectory_path’;
$path = Storage::get($adImageDestDirectory . $adImageItem->image)->store('images', 's3');
我收到错误:
Call to a member function store() on string
哪种方式有效?
谢谢!
您可以这样做以将文件存储到 s3
$file = $request->file('attachment');
$fileName = time() . $file->getClientOriginalName();
$filePath = 'uploads/' . $fileName;
Storage::disk('s3')->put($filePath, file_get_contents($file), 'public');
$urlPath = Storage::disk('s3')->url($filePath);
如果您需要将文件从本地存储上传到aws S3 bucket,那么您需要从本地复制文件:使用函数file_get_contents()
Storage::disk('s3')->put('filename.jpg', file_get_contents($adImageDestDirectory );
查看一些示例 Laravel 如何与 AWS S3 服务一起工作,我看到代码示例如下:
$path = $request->file('image')->store('images', 's3');
但是当我尝试从我的本地存储上传文件时:
$adImageDestDirectory = '/public/' . ‘subdirectory_path’;
$path = Storage::get($adImageDestDirectory . $adImageItem->image)->store('images', 's3');
我收到错误:
Call to a member function store() on string
哪种方式有效?
谢谢!
您可以这样做以将文件存储到 s3
$file = $request->file('attachment');
$fileName = time() . $file->getClientOriginalName();
$filePath = 'uploads/' . $fileName;
Storage::disk('s3')->put($filePath, file_get_contents($file), 'public');
$urlPath = Storage::disk('s3')->url($filePath);
如果您需要将文件从本地存储上传到aws S3 bucket,那么您需要从本地复制文件:使用函数file_get_contents()
Storage::disk('s3')->put('filename.jpg', file_get_contents($adImageDestDirectory );