Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
遅いフォローになりますが、PHP SDK for Windows Azure の CTP1 が、CodePlex で公開されています。
とりあえず、Blob のみではあるのですが、簡単に利用できるようになりました。Table は 7月、Queue は 8月に対応予定のようなので、PHP で Windows Azure を評価して頂ける方は、ご期待下さい。
ちなみに、中にテスト用コードが入っていますので、それを参考に画像ファイルのアップロード、ダウンロード、表示を行うと、以下のようになります。なお、事前の環境設定としては、(3) FastCGI を利用した PHP アプリケーション開発や、Azure Services Training Kit の PHP の lab を参考にして下さい。
※cURL を利用しているため、cURL のエクステンションも追加して下さい(追加していないとエラーになるので、すぐにわかると思いますが)
<?php require_once 'Microsoft/Azure/Storage/Blob.php'; /** Azure 情報(デバッグ環境, キーはデバッグ用のキーを指定)*/ define('TESTS_BLOB_HOST', '127.0.0.1:10000'); define('TESTS_STORAGE_ACCOUNT', "devstoreaccount1"); define('TESTS_STORAGE_KEY', "xxxxxxxxxxxxxxxx"); /** リソース名定義*/ define('TESTS_BLOB_CONTAINERNAME', 'phpazuretest'); define('TESTS_BLOB_FILENAME', 'testimage.jpg'); /** コンテナを取得*/ $storageClient = new Microsoft_Azure_Storage_Blob(TESTS_BLOB_HOST, TESTS_STORAGE_ACCOUNT, TESTS_STORAGE_KEY, false, Microsoft_Azure_RetryPolicy::retryN(10, 250)); try { $storageClient->deleteContainer(TESTS_BLOB_CONTAINERNAME); } catch (Exception $ex) { } $storageClient->createContainer(TESTS_BLOB_CONTAINERNAME); /** ブロブへ画像ファイルをアップロード*/ $result = $storageClient->putBlob(TESTS_BLOB_CONTAINERNAME, TESTS_BLOB_FILENAME, TESTS_BLOB_FILENAME); /** temp ファイルへ画像ファイルをダウンロード*/ $fileName = tempnam('', 'jpg'); $storageClient->getBlob(TESTS_BLOB_CONTAINERNAME, TESTS_BLOB_FILENAME, $fileName); /** 画像ファイルを出力*/ header("Content-Type: image/jpeg"); readfile($fileName); ?> |