A shorter UUID, ASCII85 with PHP



我读到了UUID v4,它几乎是独一无二的,这就是我所需要的。问题是,这是一个太大的数字,是否有可能生成像Facebook或Twitter这样的字符较少的UUID?

我读了一些帖子,您可以使用 Ascii85 将此代码缩小到 20,但没有看到可靠的 PHP 脚本来完成这项工作。有人知道一个测试类??对于随机 ID 是存储这 20 个字符的最佳方式,对吧?

---编辑---

@David·施瓦茨

谢谢。我需要在单个服务器中随机唯一标识符,介于 8 到 16 个字符之间(如果它是最低的,则 ok 20 很好)。这个想法是识别具有可读 ID 但不是增量的对象(第一个 objet 10001,第二个 10002),542A4B243J、C63426KJ70、O30V4U1I9P等方式很好。该 ID 需要成为(至少)6 个 MySQL 表的主键。对象是在同一服务器中使用 PHP 创建的。

@ta.speot.is

我写道:"没有看到一个可靠的PHP脚本来完成这项工作。有人知道一个测试类??我不认为谷歌中出现的所有代码都经过测试,您是否测试了所有链接?

@sarnold

谢谢,但对不起,不太明白=(

我正在从事的一个企业项目遇到了同样的问题,我无法在 PHP 中找到一个经过测试且快速的合理解决方案。所以我决定编写一个PHP扩展,它可以用来用base85/ascii85编码/解码数据。

你可以在这里查看:https://github.com/miezuit/php-base85

它使用一组自动测试进行测试。

最新更新