sunaoka / aws-sdk-php-structures
Library for converting AWS SDK for PHP parameters and results into typed classes
3.378.2
2026-04-10 21:39 UTC
Requires
- php: ^8.1
- aws/aws-sdk-php: 3.378.2
Requires (Dev)
- composer/composer: ^2.0
- mockery/mockery: ^1.0
- phpunit/phpunit: ^10.0 || ^11.0 || ^12.0
README
This is an EXPERIMENTAL library for converting AWS SDK for PHP parameters and results into typed classes.
Installation
Remove unused services and actions
This library contains a very large number of class files.
So, you can run the Sunaoka\Aws\Structures\Task\Composer::removeUnusedServices task and specify the services you want to keep in composer.json:
{
"scripts": {
"pre-autoload-dump": [
"Sunaoka\\Aws\\Structures\\Task\\Composer::removeUnusedServices"
]
},
"extra": {
"sunaoka/aws-sdk-php-structures": {
"S3": [
"GetObject" // Keep S3 GetObject action
],
"DynamoDb": [] // Keep DynamoDb all actions
}
}
}
Install
composer require sunaoka/aws-sdk-php-structures
Usage
use Sunaoka\Aws\Structures\S3\GetObject\GetObjectRequest; use Sunaoka\Aws\Structures\S3\S3Client; // The class of the request is '<Command>Request'. $request = new GetObjectRequest([ 'Bucket' => 'bucket', 'Key' => 'key', ]); $client = new S3Client([/* ... */]); $result = $client->getObject($request); echo $result->Body->getContents();