Visual Studio 2017でPHPを使ってAWS S3へアクセスする手順です。
環境
Windows 7 Professional SP1 64bit
Visual Studio 2017 Community
PHP Tools for Visual Studio v1.23.9750
環境構築やPHPプロジェクトの作成はこちらを参考にしてください。
http://qiita.com/akabei/items/70fafaef7b86afb5a7ec
プロジェクト作成
新しいプロジェクトで「PHP Console Project」を作成します。
aws-sdk-phpパッケージインストール
プロジェクトのReferencesを右クリックして「Install New Composer Packages...」を選択します。
ダイアログが表示されたら左上のテキストボックスに「aws-sdk-php」を入力するとリストに「aws/aws-sdk-php」が表示されるので、それを選択してInstall Packageを押します。
しばらく待まって「Installed locally」と表示されたらインストール完了ですが、なぜか表示されませんでした・・・。
ダイアログを閉じてプロジェクトのReferencesに「aws/aws-sdk-php」が追加されていたら問題ないと思います。
証明書ダウンロード
普通に実行すると証明書のチェックでエラーになるので以下から証明書をダウンロードします。(右クリックして名前を付けて保存します)
今回はプロジェクトフォルダにダウンロードしました。
D:\Project\s3bucket\s3bucket\cacert.pem
S3バケット一覧表示
index.phpを以下のように編集します。
<?php
require_once('vendor/autoload.php');
$s3 = new Aws\S3\S3Client([
'version' => 'latest',
'region' => 'ap-northeast-1',
'http' => [
'verify' => 'D:\Project\s3bucket\s3bucket\cacert.pem'
]
]);
$result = $s3->listBuckets();
foreach ($result['Buckets'] as $bucket) {
echo $bucket['Name'] . PHP_EOL;
}
?>
実行してバケット一覧が表示されたら完成です。