phpgt / ulid
唯一的、字典序可排序的标识符。
v1.2.1
2023-10-19 10:57 UTC
Requires
- php: >=8.0
Requires (Dev)
- phpmd/phpmd: ^2.13
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.3
- squizlabs/php_codesniffer: ^3.7
This package is auto-updated.
Last update: 2024-08-30 01:55:16 UTC
README
在应用程序的任何地方创建一个 new Ulid()
,你就有了一个可以作为数据库主键使用的字符串对象。Ulid 字符串看起来像 01G2J6MYN0PGC5Q21W9C
或可以前缀一个类型如 CUSTOMER_01G2J6MYN0PGC5Q21W9C
。它们是密码学伪随机生成的,并且排序使得新的 Ulid 与旧的 Ulid 相比是“大于”的。
这解决了使用自动增长整数主键时出现的问题,这些主键在分布式数据库中是可预测的,并且难以处理。
示例用法
use Gt\Ulid\Ulid; $exampleDataSource->create(new Person( new Ulid("pet"), name: "Cody", age: 5, ));