Azure Storage SDK for PHPでのBlob操作

PHPでAzureのBlobを操作する際に、Azure Storage SDK for PHPを使用したので、使い方を紹介します。

  1. Azure Storage SDK for PHPをインストール
  2. Azure Storage SDK for PHPの使い方
  3. Azure Storage SDK for PHPを使用する際に出るエラーについて
  4. まとめ

1. Azure Storage SDK for PHPのBlobをインストール

まず、Azure Storage SDK for PHPのBlobをComposerでインストールします。

2. Azure Storage SDK for PHPのBlobの使い方

今回はBlobへの書き込みと読み取り操作を説明します。

BlobRestProxyのインポート

Blobのクライアントとなるインスタンスを作成

Blobに接続するための接続文字列を用意します。

先程インポートしたBlobRestProxyのcreateBlobServiceメソッドの引数に渡し、Blobのクライアントを作成します。

{Blobのアカウントネーム}と{Blobのアカウントキー}は各自のAzureポータルからストレージアカウントの「セキュリティとネットワーク」の下にある「アクセスキー」から確認できます。

Blobの書き込み

先程作成した$blobClientのcreateBlockBlobメソッドの引数に「書き込みたいBlobのコンテナ名」、「Blob名」、「書き込む内容」を渡します。

Blobの読み取り

先程作成した$blobClientのgetBlobメソッドの引数に「読み込みたいBlobのコンテナ名」、「Blob名」を渡します。

3. Azure Storage SDK for PHPのBlobを使用する際に出るエラーについて

Blobの操作をすると下記のようなエラーが出ます。(2021/09/18時点)

このエラーはguzzlehttp/psr7が1.7.0から2.0.0にバージョンが上がったことで起こり、現時点(2021/09/18)のComposerでインストールできるAzure Storage SDK for PHPのBlobの最新で起こります。

対応としては、guzzlehttp/psr7の1.7.0を使用しているmicrosoft/azure-storage-blobの1.3.0を使用するか、エラーのでたguzzlehttp/psr7のメソッドをこちらの対応表に従って変換するかで解決します。

4. まとめ

Azure Storage SDK for PHPを使えば、簡単にAzureのストレージを操作できるので、AppServiceなどの状態を持つべきでないサービスを使用する際はAzure Storageを活用していきたいと思います。

参考

https://github.com/Azure/azure-storage-php



❏❏ TOPIC ❏❏ ------------------------------------------------------------

カスタム自由!フリーECサイトパッケージ
チャットボット導入サービス
WEBシステム開発・スマホアプリ開発はSRIAへ