artox-lab / aws-sdk-php-symfony
为PHP AWS SDK v3提供的Symfony包
Requires
- php: >=5.5
- aws/aws-sdk-php: ^3.2.6
- symfony/config: ~2.3|~3.0|~4.0|~5.0|^6.0
- symfony/dependency-injection: ~2.3|~3.0|~4.0|~5.0|^6.0
- symfony/http-kernel: ~2.3|~3.0|~4.0|~5.0|^6.0
Requires (Dev)
- phpunit/phpunit: ^4.8.35|^5.6.3|^6.0.0
- symfony/framework-bundle: ~2.3|~3.0|~4.0|~5.0|^6.0
- symfony/yaml: ~2.3|~3.0|~4.0|~5.0|^6.0
Replaces
- aws/aws-sdk-php-symfony: 2.5.0
This package is auto-updated.
Last update: 2024-08-29 05:50:11 UTC
README
一个用于包含PHP AWS SDK的Symfony包。
跳转到
入门指南
安装
AWS包可以通过Composer安装,在项目的composer.json
文件中需要包含aws/aws-sdk-php-symfony
包
{ "require": { "aws/aws-sdk-php-symfony": "~2.0" } }
并将Aws\Symfony\AwsBundle
实例添加到应用内核
class AppKernel extends Kernel { public function registerBundles() { return [ ... new \Aws\Symfony\AwsBundle(), ]; } ... }
配置
默认情况下,配置由SDK处理而不是由包处理,编译时不会执行验证。有关可用的配置选项的完整文档,请参阅SDK指南。
如果将AWS_MERGE_CONFIG环境变量设置为true
,则启用配置验证和合并。该包验证并合并已知配置选项,包括每个服务。可以在单个配置文件中包含其他配置选项,但如果在多次指定非标准选项时合并将失败。
要使用任何配置值的服务,请使用@
后跟服务名称,例如@a_service
。这种语法将在容器编译期间转换为服务。如果您想使用以@
开头的字符串字面量,您需要通过添加另一个@
符号来转义它。
当从EC2实例使用SDK时,您可以写入credentials: ~
来使用实例配置文件凭证。这种语法意味着将从EC2实例的元数据服务器自动检索临时凭证。这也是向在特定上下文中运行的应用程序提供凭证的首选技术。
示例配置可以在tests/fixtures
文件夹中找到,包括YAML、PHP和XML。
示例YML配置
可以放置在app/config/config.yml
文件中的示例配置。
framework: secret: "Rosebud was the name of his sled." aws: version: latest region: us-east-1 credentials: key: not-a-real-key secret: "@@not-a-real-secret" # this will be escaped as '@not-a-real-secret' DynamoDb: region: us-west-2 S3: version: '2006-03-01' Sqs: credentials: "@a_service" CloudSearchDomain: endpoint: https://search-with-some-subdomain.us-east-1.cloudsearch.amazonaws.com services: a_service: class: Aws\Credentials\Credentials arguments: - a-different-fake-key - a-different-fake-secret
用法
此包将Aws\Sdk
对象实例以及每个AWS客户端对象实例作为服务提供给您的symfony应用程序。它们的名称为aws.{$namespace}
,其中$namespace
是服务客户端的命名空间。例如
可用的服务列表可以通过在应用程序根目录中运行以下命令来查看:
php bin/console debug:container aws
关于列出的每个服务的完整文档可以在SDK API文档中找到。
获取帮助
请使用这些社区资源获取帮助。我们使用GitHub问题跟踪错误和功能请求,但我们处理它们的带宽有限。
- 在StackOverflow上提问,并使用
aws-php-sdk
标签 - 加入 AWS SDK for PHP gitter
- 通过 AWS Support 开启支持工单
- 如果您发现可能存在一个错误,请 开启一个问题
此 SDK 实现了 AWS 服务 API。有关 AWS 服务及其限制的一般问题,您还可以查看 Amazon Web Services 讨论论坛。
开启问题
如果您遇到 aws-sdk-php-symfony
的错误,我们希望了解有关情况。在现有问题中进行搜索,并在开启新问题之前确保您的问题尚未存在。如果您能包括 aws-sdk-php-symfony
的版本、使用的 PHP 版本和操作系统,那将很有帮助。在适当的情况下,请包括堆栈跟踪和简化后的重现案例。
GitHub 问题是用于错误报告和功能请求的。有关使用 aws-sdk-php
的帮助和问题,请使用“获取帮助”部分中列出的资源。处理问题的资源有限,通过保持开启问题列表精简,我们可以及时响应。
贡献
我们努力提供高质量且有用的 SDK 以供我们的 AWS 服务使用,我们非常重视来自社区的反馈和贡献。在提交任何问题或拉取请求之前,请先查看我们的 贡献指南,以确保我们拥有有效响应您的错误报告或贡献所需的所有必要信息。