bit-badger/pdo-document

将 SQLite 和 PostgreSQL 作为文档存储处理

v2.0.0-rc1 2024-10-02 01:37 UTC

README

此库允许将 SQLite 和 PostgreSQL 作为文档数据库处理。它是 .NET BitBadger.Documents 库的 PHP 实现。

通过 Composer 安装

Static Badge     Packagist Version

composer require bit-badger/pdo-document

对于 v1 系列,DocumentList 类型的成员 hasItemsitems 是函数;在 v2 系列中,它们是属性。此外,项目包含的 OptionResult 类型也有类似的不同;请参阅 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 是默认值;不会生成 ID
  • AutoId::Number 将将最大 ID 加 1 分配给 ID 为 0 的文档
  • AutoId::UUID 将为空字符串 ID 的文档生成 v4 UUID
  • AutoId::RandomString 将为空字符串 ID 的文档生成字母和数字的字符串;Configuration::$idStringLength 控制生成字符串的长度,默认为 16 个字符

在所有生成的场景中,如果 ID 值不是 0 或空白,则将使用该 ID 而不是生成的 ID。

用法

完整的文档可以在项目网站上找到 这里