This package aims to wrap around Amazons PHP sdk so that it provides the developer with a more object-orientated interface. Thus, the developer will spend less time having to read the documentation in order to look-up the parameters they need to pass into an array.
This version of the wrapper is based on version 3 of the SDK.
composer require programster/aws-Wrapper
<?php
require_once(__DIR__ . '/vendor/autoload.php');
define('S3_BUCKET', 'my-bucket-name');
define('AWS_KEY', 'someKeyValueHere');
define('AWS_SECRET', 'someAwsSecretHere');
$awsWrapper = new \Programster\AwsWrapper\AwsWrapper(
AWS_KEY,
AWS_SECRET,
Programster\AwsWrapper\Enums\AwsRegion::create_EU_W1()
);
# Get the S3 client for interfacing with S3, rather than EC2
$s3Client = $awsWrapper->getS3Client();
# Create a private file in S3 called "test-file.txt" that contains the text
# "hello world" in our bucket.
$response = $s3Client->createFile(
S3_BUCKET,
"hello world",
'test-file.txt',
Programster\AwsWrapper\S3\Acl::createAuthenticatedRead(),
Programster\AwsWrapper\S3\StorageClass::createStandard()
);
I've occasionally had issues with running commands that would just block and never return. The solution for me was to install the php-xml package with
sudo apt-get install php-xml
I will remove this note once I have figured out how to make composer require that for installation.