K-可排序唯一标识符。

1.1.3 2023-06-25 16:42 UTC

This package is auto-updated.

Last update: 2024-09-22 12:50:17 UTC


README

License

概览

Ksuid代表K-可排序唯一标识符。这是一种生成全球唯一ID的方法,这些ID部分按时间顺序可排序。

安装

composer require tiny-blocks/ksuid

如何使用

该库通过Ksuid类提供了一个具体的实现。

创建Ksuid

使用random方法,可以从时间戳(当前Unix时间戳 - EPOCH)和有效载荷(密码学安全的伪随机字节)创建一个新类型的Ksuid实例。

$ksuid = Ksuid::random();

$ksuid->getValue();     # 2QzPUGEaAKHhVcQYrqQodbiZat1
$ksuid->getPayload();   # 464932c1194da98e752145d72b8f0aab
$ksuid->getUnixTime();  # 1686353450
$ksuid->getTimestamp(); # 286353450

您还可以选择其他工厂模型。

Ksuid::from(payload: hex2bin('9850EEEC191BF4FF26F99315CE43B0C8'), timestamp: 286235327);

Ksuid::fromPayload(value: '0o5Fs0EELR0fUjHjbCnEtdUwQe3');

Ksuid::fromTimestamp(value: 286235327);

检查Ksuid

您可以使用inspectFrom方法检查用于创建Ksuid的组件。

$ksuid = Ksuid::inspectFrom(ksuid: '2QzPUGEaAKHhVcQYrqQodbiZat1'); # Array
                                                                   # (
                                                                   #    [time] => 2023-06-09 20:30:50 -0300 -03
                                                                   #    [payload] => 464932c1194da98e752145d72b8f0aab
                                                                   #    [timestamp] => 286353450
                                                                   # )

许可证

Ksuid遵循MIT许可证。

贡献

请遵循贡献指南以贡献到项目。