Download the PHP package thedomeffm/sapphire without Composer
On this page you can find all versions of the php package thedomeffm/sapphire. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download thedomeffm/sapphire
More information about thedomeffm/sapphire
Files in thedomeffm/sapphire
Package sapphire
Short Description A simple PHP DynamoDB ODM
License MIT
Homepage https://github.com/thedomeffm/sapphire
Informations about the package sapphire
SAPPHIRE
composer require thedomeffm/sapphire
Info
This library is WIP! Not ready for production!
Sapphire is simple PHP DynamoDB ODM. Made to be fast and tiny. Ideal for serverless PHP functions.
The ODM does just the mapping part and does not handle queries at all! You have to use async-aws or the aws-sdk in order to work with the ODM.
The mapping just work with typed properties and just uses php attributes! There is no support for annotation!
Requirements
- php: >=8.0
- typed properties!
- composer: >=2.0
The package has probably some problems if used with an old composer 1 version
What does the library do?
You add Attributes to your PHP Classes and with the help of the DynamoManager you can convert to PHP Object to an Array that the AWS-SDK or async-aws can work with and vice versa. The library does not care about generating missing tables. You can use CloudFormation or Terraform with this.
Example
Save item in DynamoDB
Cast AWS DynamoDB Item to your PHP Object
More complex Examples
Typed arrays => Dynamo Data Sets
IMPORTANT INFO The content of the array is not checked by the ODM (for performance reasons)!
arrayType | DynamoDB Set |
---|---|
mixed | L |
string | SS |
number | NS |
binary | BS |
Embedded Documents
Info The embedded document will be saved as 'M' => Map
See documentation
Binary
You need to use
string
or?string
to useisBinary
!INFO The value will be converted to base64! If you need the binary use
base64_decode()
on the property.