承接 tiny-blocks/ksuid 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tiny-blocks/ksuid

最新稳定版本:1.4.0

Composer 安装命令:

composer require tiny-blocks/ksuid

包简介

K-Sortable Unique Identifier.

README 文档

README

License

Overview

Ksuid stands for K-Sortable Unique Identifier. It's a way to generate globally unique IDs which are partially chronologically sortable.

Installation

composer require tiny-blocks/ksuid

How to use

The library exposes a concrete implementation through the Ksuid class.

Creating a Ksuid

With the random method, a new instance of type Ksuid is created from a timestamp (current unix timestamp - EPOCH) and a payload (cryptographically secure pseudo-random bytes).

$ksuid = Ksuid::random();

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

You can also choose from other factory models.

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

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

Ksuid::fromTimestamp(value: 286235327);

Inspecting a Ksuid

You can inspect the components used to create a Ksuid, using the inspectFrom method.

$ksuid = Ksuid::inspectFrom(ksuid: '2QzPUGEaAKHhVcQYrqQodbiZat1');

This will output the following array:

[
    'time'      => '2023-06-09 20:30:50 -0300 -03',
    'payload'   => '464932c1194da98e752145d72b8f0aab',
    'timestamp' => 286353450
]

License

Ksuid is licensed under MIT.

Contributing

Please follow the contributing guidelines to contribute to the project.

统计信息

  • 总下载量: 67.35k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 6
  • 点击次数: 2
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 6
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-06-08