jvalousek/aws-sdk-nette-s3-ec2-extension

PHP AWS SDK 的 Nette 扩展 http://aws.amazon.com/sdkforphp/ (从 ublaboo/aws-sdk-nette-extension 分支而来)

v1.0.5 2019-07-19 14:32 UTC

This package is auto-updated.

Last update: 2024-09-20 02:27:22 UTC


README

Latest Stable Version License Total Downloads Gitter

aws-sdk-nette-extension

PHP AWS SDK 的 Nette 扩展 http://aws.amazon.com/sdkforphp/

安装

使用 composer 下载扩展

composer require ublaboo/aws-sdk-nette-extension

在您的 config.neon 文件中注册扩展

extensions:
	aws: Ublaboo\AwsSdkNetteExtension\DI\AwsSdkNetteExtension

配置

在您的 config.neon 文件中配置扩展

aws:
	region: eu-west-1
	version: latest

并将您的密钥和秘密放在 config.local.neon 文件中(该文件不应进行版本控制)

aws:
	credentials:
		key: your_access_key
		secret: your_secret_access_key

用法

理想情况下,创建一些服务,它们封装 S3 客户端,并在其中包含您的逻辑

class S3Service
{

	/**
	 * @var \Aws\S3\S3Client
	 */
	public $s3;


	public function __construct(\Aws\S3\S3Client $s3)
	{
		$this->s3 = $s3;
	}


	public function save($path_to_file)
	{
		$this->s3->putObject([
			'Bucket'     => 'YourBucket',
			'Key'        => 'YourObjectKey',
			'SourceFile' => $path_to_file,
		]);
	}

}

并在您的演示者中使用它们

class HomepagePresenter extends Presenter
{

	/**
	 * @var S3Service
	 * @inject
	 */
	public $service;


	public function actionDefault()
	{
		$this->service->save('/path/to/file');
	}

}