Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Windowsazure

Windowsazure Laravel Package

microsoft/windowsazure

PHP client libraries for Microsoft Azure Tables, Blobs, Storage Queues, Service Bus, and runtime/management APIs. Note: this SDK is retired (since Feb 2021) and no longer maintained; use Azure REST APIs or azure-storage-php for Storage.

View on GitHub
Deep Wiki
Context7

Microsoft Azure SDK for PHP

Frequently asked questions about Windowsazure
Is `microsoft/windowsazure` still safe to use in Laravel projects?
No, this package is officially retired since February 2021 and no longer maintained by Microsoft. While it may still work, it poses security risks due to unpatched vulnerabilities and outdated Azure API versions. Use alternatives like the Azure REST API or the newer `azure-storage-php` SDK instead.
How do I install `microsoft/windowsazure` in Laravel?
Add it via Composer: `composer require microsoft/windowsazure`. The package follows PSR-4 autoloading, so Laravel’s Composer autoloader will handle it automatically. No additional Laravel-specific setup is required beyond instantiating Azure services via `ServicesBuilder`.
Can I use this package with Laravel’s service container?
Not natively, but you can manually bind it in your `AppServiceProvider`. For example, bind `ServicesBuilder` to a key like `'azure'` and create a facade to abstract service instantiation. This allows dependency injection in Laravel controllers or services.
What’s the best way to handle Azure connection strings in Laravel?
Store connection strings in Laravel’s `.env` file (e.g., `AZURE_STORAGE_CONNECTION_STRING`) and retrieve them using `env('AZURE_STORAGE_CONNECTION_STRING')`. For production, consider using Laravel Vault or a secrets manager to securely manage credentials.
How do I authenticate with Azure AD or SAS tokens in this package?
The package supports SAS tokens and shared keys for Storage services, and Azure AD for Media Services. For SAS tokens, construct them manually or use Azure’s tools, then pass them to service methods like `createBlobService()` with the `sasToken` parameter. Azure AD requires client credentials or interactive auth.
What are the alternatives to `microsoft/windowsazure` for Laravel?
For Storage (Blobs, Tables, Queues), use the actively maintained `azure/storage-blob-php`, `azure/storage-table-php`, or `azure/storage-queue-php` packages. For broader Azure integration, consider direct REST API calls via Guzzle or the newer Azure SDK for PHP (if available).
How do I migrate from `microsoft/windowsazure` to a newer Azure SDK?
Start by identifying which Azure services you use (e.g., Blobs, Tables). Replace the monolithic package with granular SDKs like `azure/storage-blob-php` for Blobs. Update connection strings and service instantiation logic to match the new SDK’s API. Test thoroughly, especially for authentication and error handling.
Does this package support Laravel’s Eloquent for Azure Tables?
No, this package does not integrate with Eloquent. Azure Tables are NoSQL, so you’d need to manually map entities to the SDK’s `TableEntity` class or use a custom ORM like `jenssegers/laravel-mongodb` (if migrating to Cosmos DB Tables) or build your own abstraction layer.
How do I handle errors and retries in Laravel with this SDK?
Wrap `ServiceException` in Laravel’s `Handler` or create a custom middleware to log errors and implement retries. For example, catch exceptions in a try-catch block and use Laravel’s `retry` helper or a library like `spatie/laravel-retryable` for exponential backoff.
Will this package work with Laravel 10 or newer versions?
Technically, it may still work since it relies on Composer autoloading, but it’s not tested or supported for modern Laravel versions. The lack of maintenance means compatibility with newer PHP versions (8.1+) or Laravel features (e.g., dependency injection) is unguaranteed. Use at your own risk or migrate to alternatives.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours