Microsoft Azure PHP SDKでPHPからBlobストレージへアクセス

| コメント(0) | トラックバック(0)

Windows AzureはMicrosoft Azureに変わったそうで。まぁ、名前はどうでもいい。

AZBlobDisk

Perl版は無いのですがPHPはSDKがあります。Azureのストレージへのアクセスはトークンの組み立てが面倒なので、それだけでもね。こういうのがあると手軽です。

注意点としては、PEARの HTTP/Request2.php が必要なところですね(Mail_mimeと Mail_mimeDecodeも必要)。

The PHP Client Libraries for Azure have a dependency on the HTTP_Request2, Mail_mime, and Mail_mimeDecode PEAR packages. The recommended way to resolve these dependencies is to install these packages using the PEAR package manager

use WindowsAzure\Common\ServicesBuilder;
require_once 'WindowsAzure/WindowsAzure.php';

$protocol = 'https';
$container_name = 'test';
$connectionString = "DefaultEndpointsProtocol=${protocol};AccountName=${account_name};AccountKey=${primary_access_key}";
$blobRestProxy = ServicesBuilder::getInstance()->createBlobService( $connectionString );

 // 一覧取得
$blob_list = $blobRestProxy->listBlobs( $container_name );
$blobs = $blob_list->getBlobs();

 // Blobの取得
$blob = $blobRestProxy->getBlob( $container_name, 'path/to/blob' );
ob_start();
fpassthru($blob->getContentStream());
$content = ob_get_contents();
ob_end_clean();
file_put_contents( 'path/to/out', $content );

// Blobの生成(アップロード)
$blobRestProxy->createBlockBlob( $container_name, 'path/to/new_blob', $content );

尚、Perl版はこれ相当のものが無いので自分で作成したものがあります(とりあえずはBlobのみ)。
宜しければご活用ください。

トラックバック(0)

トラックバックURL: http://junnama.alfasado.net/cgi/mt/mt-tb.cgi/832

コメントする

Facebook

Twitter

このブログ記事について

このページは、Junnama Nodaが2014年5月 9日 17:32に書いたブログ記事です。

ひとつ前のブログ記事は「PHPerのための Movable Type 講座(その13)」です。

次のブログ記事は「Movable Type for AWS(AMI) のセットアップ、プラグインを設置するまで。」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.2.6