tanghengzhi / aws-sdk-php-laravel
一个简单的Laravel 5/6/7/8/9服务提供者,用于包含PHP的AWS SDK。
Requires
- php: >=7.1.0
- aws/aws-sdk-php: ~3.0
- illuminate/support: ^5.1 || ^6.0 || ^7.0 || ^8.0 || ^9.0
Requires (Dev)
- phpunit/phpunit: ^7.0 || ^8.0 || ^9.0
- vlucas/phpdotenv: ^1.0 || ^2.0 || ^3.0 || ^4.0 || ^5.0
Suggests
- laravel/framework: To test the Laravel bindings
- laravel/lumen-framework: To test the Lumen bindings
This package is auto-updated.
Last update: 2024-09-12 12:46:39 UTC
README
这是一个简单的Laravel服务提供者,它使得在Laravel和Lumen应用程序中包含官方的AWS SDK for PHP变得容易。
此README是为服务提供者3.x版本而编写的,该版本与AWS SDK for PHP的版本3和Laravel 5.1兼容。
主要版本
- 3.x (您在这里) - 用于
laravel/framework:~5.1|~6.0|~7.0|~8.0|~9.0
和aws/aws-sdk-php:~3.0
- 2.x (2.0分支) - 用于
laravel/framework:5.0.*
和aws/aws-sdk-php:~2.4
- 1.x (1.0分支) - 用于
laravel/framework:4.*
和aws/aws-sdk-php:~2.4
跳转至
入门指南
安装
您可以通过在项目的composer.json
中要求aws/aws-sdk-php-laravel
包,使用Composer安装AWS服务提供者。
{ "require": { "aws/aws-sdk-php-laravel": "~3.0" } }
然后运行composer update
php composer.phar update
要使用AWS服务提供者,您必须在启动应用程序时注册提供者。
Lumen
在Lumen中,在bootstrap/app.php
中找到Register Service Providers
并注册AWS服务提供者。
$app->register(Aws\Laravel\AwsServiceProvider::class);
Laravel
在Laravel中,在config/app.php
中找到providers
键并注册AWS服务提供者。
'providers' => array( // ... Aws\Laravel\AwsServiceProvider::class, )
在config/app.php
中找到aliases
键并添加AWS外观别名。
'aliases' => array( // ... 'AWS' => Aws\Laravel\AwsFacade::class, )
配置
默认情况下,该软件包使用以下环境变量来自动配置插件而无需修改
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_REGION (default = us-east-1)
要自定义配置文件,请使用Artisan发布软件包配置。
php artisan vendor:publish --provider="Aws\Laravel\AwsServiceProvider"
设置可以在生成的config/aws.php
配置文件中找到。默认情况下,凭证和区域设置将从您的.env
文件中获取。
return [ 'credentials' => [ 'key' => env('AWS_ACCESS_KEY_ID', ''), 'secret' => env('AWS_SECRET_ACCESS_KEY', ''), ], 'region' => env('AWS_REGION', 'us-east-1'), 'version' => 'latest', // You can override settings for specific services 'Ses' => [ 'region' => 'us-east-1', ], ];
请注意,如果您想使用默认SDK配置提供者链,您可以始终从该文件中删除credentials
行。
有关使用php artisan config:cache
时必须使用配置文件而不是环境变量选项的说明,请参阅Laravel 5.2.0 升级指南。
有关如何在SDK用户指南中配置SDK的更多信息,请参阅。
用法
为了在您的应用程序中使用AWS SDK for PHP,您需要从Laravel服务容器获取它。以下示例使用Amazon S3客户端上传文件。
$s3 = App::make('aws')->createClient('s3'); $s3->putObject(array( 'Bucket' => 'YOUR_BUCKET', 'Key' => 'YOUR_OBJECT_KEY', 'SourceFile' => '/the/path/to/the/file/you/are/uploading.ext', ));
如果AWS外观已注册在应用程序配置的aliases
部分中,您还可以使用以下技术。
$s3 = AWS::createClient('s3'); $s3->putObject(array( 'Bucket' => 'YOUR_BUCKET', 'Key' => 'YOUR_OBJECT_KEY', 'SourceFile' => '/the/path/to/the/file/you/are/uploading.ext', ));
获取帮助
请使用以下社区资源寻求帮助。我们使用GitHub问题跟踪错误和功能请求,但处理它们的带宽有限。
- 在StackOverflow上提问,并使用
aws-php-sdk
标签 - 加入AWS SDK for PHP gitter
- 通过AWS Support开启支持工单
- 如果发现可能存在的错误,请开启问题
此SDK实现了AWS服务API。有关AWS服务和它们的限制的一般问题,您也可以查看Amazon Web Services讨论论坛。
开启问题
如果您在使用aws-sdk-php-laravel
时遇到错误,我们希望了解情况。搜索现有问题,并在开启新问题之前确保您的问题尚未存在。如果可能,包括aws-sdk-php-laravel
版本、PHP版本和您使用的操作系统。在适当的时候,请包括堆栈跟踪和简化的重现案例。
GitHub问题用于错误报告和功能请求。有关使用aws-sdk-php
的帮助和问题,请使用“获取帮助”部分中列出的资源。可用的资源有限,处理问题,通过保持开放问题列表简洁,我们可以及时响应。
贡献
我们努力为AWS服务提供高质量且有用的SDK,并且非常重视社区反馈和贡献。在提交任何问题或拉取请求之前,请先查看我们的贡献指南,以确保我们有所有必要的信息来有效地响应您的错误报告或贡献。