使用laravel将文件存储到aws s3

时间:2017-11-18 13:50:59

标签: laravel laravel-5 amazon-s3 laravel-5.5 laravel-filesystem

请举例说明如何在laravel 5.5中将文件存储到AWS S3。 我已经使用AWS凭据配置了文件系统文件。

我看到了这个功能

Storage::put('file.jpg', $contents);

但不知道第二个参数是什么

filesystem.php文件的内容如下

return [


    'default' => env('FILESYSTEM_DRIVER', 'local'),



    'cloud' => env('FILESYSTEM_CLOUD', 's3'),


    'disks' => [

        'local' => [
            'driver' => 'local',
            'root' => storage_path('app'),
        ],

        'public' => [
            'driver' => 'local',
            'root' => storage_path('app/public'),
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

        's3' => [
            'driver' => 's3',
            'key' => '*********',
            'secret' => '******',
            'region' => 'my region',
            'bucket' => 'bucketname',
        ],

    ],

];

提前致谢

1 个答案:

答案 0 :(得分:1)

Laravel documentation中有很好的例子:

Storage::disk('s3')->put('avatars/1', $fileContents);

第二个参数是文件内容,所以在现实生活中它可能如下所示:

Storage::disk('s3')->put('file.jpg', file_get_contents('your_local_file.jpg');