INNOBASE技術ブログ

技術的なことエンジニア的なこと制作的なこと全般

AWS SDK for PHPで感動的に簡単にS3を利用できたのでSampleを公開する

WEBサーバー分散環境のユーザーアップロードコンテンツの保存先にS3を選択しました。
感動的に簡単に利用できたのでSampleを公開します。

S3アクセスライブラリSample


mr51/aws_s3_sample · GitHub

ざっくり基本的な以下の機能をカバー

  • S3に保存
  • S3からのデータ取得
  • S3のURL取得
  • S3から削除
AWS SDK for PHP 利用法概略

※以下のコードはAWS SDK for PHPを生で使う場合のsample codeです。

$aws_account = [
    'key' => 'aws_iam_access_key', // 自分のアカウントのkeyに書き換える
    'secret' => 'aws_iam_secret', // 自分のアカウントのsecretに書き換える
];
$s3client = \Aws\S3\S3Client::factory($aws_account);
$request_params = [
    'Bucket'    => 'hogehoge', // 取得するObjectのbucketを指定する
    'Key'       => 'test.txt', // 取得するObject(file)のkey(path)を指定する
];
$result = $s3client->getObject($request_params);
echo $result['Body'];

必要なものinstallした後は↑こんな簡単にS3を利用できます。

その他使い方は難しくないのでsmaple見てください。
下手に説明するよりコード見たほうがわかりやすいはず

AWS SDK for PHP install はcomposerでお手軽
$ php composer.phar search aws #パッケージ名とか確認
$ php composer.phar show aws/aws-sdk-php # versionとか確認
$ php composer.phar require aws/aws-sdk-php # install sample では 2.6.16を使用しています。

pakcagist利用する場合はcomposer.json直編集するより↑こんなかんじでコマンドinstallしたほうが確実だと思っている。