PHP的唯一ID

Che*_*rio 1 php random

我写这个简单的行来获取每次随机和唯一的代码(只有8个字符):


echo substr(md5(uniqid(rand(), true)),0,8);

输出:

077331e5
5af425b1
0fc7dcf2
...

我问我是否永远不会发生碰撞(重复).或者那可能发生.

BS:
最好用time()吗?


echo substr(md5(uniqid(time(), true)),0,8);

Kyl*_*yle 6

哈希可能会发生碰撞.通过获取哈希的子字符串,您只是增加了发生这种情况的机会.