flysystem-aws
use Aws\S3\S3Client;
use League\Flysystem\AwsS3v2\AwsS3Adapter;
use League\Flysystem\Filesystem;
$client = S3Client::factory(array(
'key' => '[your key]',
'secret' => '[your secret]',
'region' => '[aws-region]',
));
$adapter = new AwsS3Adapter($client, 'bucket-name', 'optional-prefix');
$filesystem = new Filesystem($adapter);