noxlogic/shortid

此包已被废弃且不再维护。未建议替代包。

Short ID 生成器,作为公共 UUID 的替代方案

dev-master 2017-05-04 15:10 UTC

This package is auto-updated.

Last update: 2021-02-01 12:24:26 UTC


README

这是一个简单的短 ID 生成器,可作为 UUID 的替代方案

此包基于博客文章: https://eager.io/blog/how-long-does-an-id-need-to-be/ 以及其他。

用法

composer require noxlogic/shortid

在您的代码中

$id = ShortId::generate();

或更多一些控制

$generator = new Gmp();
$encoder = new Base58();
$id = ShortId::generate($generator, $encoder);

生成器

这些是实际转换生成数字的生成器。这可以通过多种方式完成,但利用 GMP(以及可能的 BCMATH)扩展应该可以加快生成速度。目前有一个普通生成器和 GMP 生成器。如果可能,当 GMP 可用时,shortner 将使用 GMP。

编码器

这将通过编码数据将实际数字转换为可在您的网站上使用的格式。有两种:base64,将以通用方式编码,和 base58 编码器,将进一步压缩数字。它还将生成仅使用 URL 安全数字,而不使用 base64 使用的某些 URL 不安全字符。