bit-badger / pdo-document
将 SQLite 和 PostgreSQL 作为文档存储处理
Requires
- php: >=8.4
- ext-pdo: *
- bit-badger/inspired-by-fsharp: ^2
- netresearch/jsonmapper: ^4
Requires (Dev)
- phpstan/phpstan: ^1.12
- phpunit/phpunit: ^11
- square/pjson: ^0.5.0
This package is auto-updated.
Last update: 2024-10-02 01:42:33 UTC
README
此库允许将 SQLite 和 PostgreSQL 作为文档数据库处理。它是 .NET BitBadger.Documents 库的 PHP 实现。
通过 Composer 安装
composer require bit-badger/pdo-document
对于 v1 系列,DocumentList
类型的成员 hasItems
和 items
是函数;在 v2 系列中,它们是属性。此外,项目包含的 Option
和 Result
类型也有类似的不同;请参阅 PHP 8.2 或 8.3 的 v1 README 和 PHP 8.4 的 v2 README。两个版本都受支持;v1 / v2 的区别有助于 composer 根据您的项目目标 PHP 版本做出正确的选择。
配置
连接详情
必须通过 Configuration::useDSN()
提供以下 PDO 数据源名称。此外,Configuration
还具有 $username
、$password
和 $options
变量,它们将用于构建用于数据访问的 PDO 对象。
文档标识符
每个文档都必须有一个唯一的标识符。默认情况下,库假定这是一个名为 id
的属性或数组键,但可以通过设置 Configuration::$idField
来控制。一旦存在文档,则不应更改此设置。
ID 可以在插入时自动生成。AutoId
枚举有 4 个值
AutoId::None
是默认值;不会生成 IDAutoId::Number
将将最大 ID 加 1 分配给 ID 为 0 的文档AutoId::UUID
将为空字符串 ID 的文档生成 v4 UUIDAutoId::RandomString
将为空字符串 ID 的文档生成字母和数字的字符串;Configuration::$idStringLength
控制生成字符串的长度,默认为 16 个字符
在所有生成的场景中,如果 ID 值不是 0 或空白,则将使用该 ID 而不是生成的 ID。
用法
完整的文档可以在项目网站上找到 这里。