bref / dynamap
此包已被废弃,不再维护。未建议替代包。
DynamoDB对象映射器
0.4.1
2020-12-29 17:42 UTC
Requires
- php: ^8.0
- ext-json: *
- aws/aws-sdk-php: ^3.130
- phpdocumentor/reflection-docblock: ^5.0
- symfony/property-info: ^4.2
Requires (Dev)
- mnapoli/hard-mode: ^0.3
- phpunit/phpunit: ^9.0
README
DynamoDB对象映射器。类似于Doctrine或Eloquent,但用于DynamoDB。
此库目前处于实验状态,不建议在生产环境中使用。
安装
composer require bref/dynamap
使用方法
$dynamap = Dynamap::fromOptions([ 'region' => 'us-east-1', ], $mapping); $dynamap->save($myObject); $myObject = $dynamap->find(MyClass::class, 'key'); $myObject = $dynamap->get(MyClass::class, 'key'); // Same as `find()` but throws an exception if not found $objects = $dynamap->getAll(MyClass::class);
映射示例
$mapping = [ Article::class => [ 'table' => 'articles', 'keys' => [ 'id', ], ], ];
支持的字段类型
- 字符串
- 整数
- 浮点数
- 布尔值
DateTimeImmutable
(以字符串形式存储)
贡献
在本地运行测试
- 使用
docker-compose up
或docker-compose start
启动DynamoDB本地 - 运行
phpunit