bref/dynamap

此包已被废弃,不再维护。未建议替代包。

DynamoDB对象映射器

0.4.1 2020-12-29 17:42 UTC

This package is auto-updated.

Last update: 2022-10-29 02:33:33 UTC


README

DynamoDB对象映射器。类似于Doctrine或Eloquent,但用于DynamoDB。

Build Status Latest Version Total Downloads

此库目前处于实验状态,不建议在生产环境中使用。

安装

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 updocker-compose start启动DynamoDB本地
  • 运行phpunit