azure-oss / storage-blob-flysystem
Flysystem adapter for Azure Storage PHP
Package info
github.com/Azure-OSS/azure-storage-php-adapter-flysystem
pkg:composer/azure-oss/storage-blob-flysystem
Requires
- php: ^8.1
- azure-oss/storage: ^1.4
- league/flysystem: ^3.28
README
Community-driven PHP SDKs for Azure, because Microsoft won't.
In November 2023, Microsoft officially archived their Azure SDK for PHP and stopped maintaining PHP integrations for most Azure services. No migration path, no replacement — just a repository marked read-only.
We picked up where they left off.
Our other packages:
-
azure-oss/storage – Azure Blob Storage SDK
-
azure-oss/storage-blob-laravel – Laravel filesystem driver
-
azure-oss/storage-queue – Azure Storage Queue SDK
-
azure-oss/storage-queue-laravel – Laravel Queue connector
Install
composer require azure-oss/storage-blob-flysystem
Documentation
You can read the documentation here.
Quickstart
<?php use AzureOss\Storage\Blob\BlobServiceClient; use AzureOss\Storage\BlobFlysystem\AzureBlobStorageAdapter; use League\Flysystem\Filesystem; $service = BlobServiceClient::fromConnectionString( getenv('AZURE_STORAGE_CONNECTION_STRING') ); $container = $service->getContainerClient( getenv('AZURE_STORAGE_CONTAINER') ); $adapter = new AzureBlobStorageAdapter($container); $filesystem = new Filesystem($adapter); // Write $filesystem->write('docs/hello.txt', 'Hello Azure Blob + Flysystem'); // Read $contents = $filesystem->read('docs/hello.txt'); // Stream upload $stream = fopen('/path/to/big-file.zip', 'r'); $filesystem->writeStream('archives/big-file.zip', $stream); fclose($stream); // List recursively foreach ($filesystem->listContents('docs', true) as $item) { echo $item->path().PHP_EOL; } // Delete $filesystem->delete('docs/hello.txt');
License
This project is released under the MIT License. See LICENSE for details.