【发布时间】:2012-01-03 22:52:47
【问题描述】:
我希望能够从一个整数中生成一个唯一的字符串 id。
例如,“1”转换为“o7wu”,反之亦然。 (使用数字搜索数据库和显示的字符串)
我发现了这个很棒的功能:http://kevin.vanzonneveld.net/techblog/article/create_short_ids_with_php_like_youtube_or_tinyurl/,但是生成的 id 对于小数字来说真的丑,例如 “1”是“aacd”,“2”是“aadd”。我还发现了http://blog.kevburnsjr.com/php-unique-hash,生成的 id 看起来很棒,但我认为它们只是“一种方式”。
我真的不需要任何类型的加密,我只需要它简短、漂亮。
对于那些对我对漂亮 ID 的定义感到困惑的人:我将漂亮定义为真正随机混合的字符和整数。不是:aabb33、abc123、aa22cc。 YES: dfh7, ao8f, z6t4 .. 等等...
【问题讨论】:
-
为什么丑很重要? o7wu 很漂亮,而 aacd 不漂亮——你一定是个现代艺术评论家
-
顺便说一句,我是一名现代艺术评论家 :) 我将漂亮定义为真正随机混合的字符和整数。aabbc、11aac、1a2b3c 不漂亮,w9d6a、qi51m 和 ap3o 漂亮,甚至漂亮。
-
如果您真的关心他们的“漂亮”,只需将数字映射到您发现的漂亮字符串即可。另外,我不太明白将 1 更改为 "o7wu" 是如何通过任何想象来缩短它的。
-
@Jonathan:
aaaaaaa与qi51m一样“随机”。你可能想要更少的“真实”随机性;-) -
@jprofitt:加倍努力,试试你的想象力:像 9999999999 转换为 asjt3。
标签: php encryption hash url-shortener