生成唯一 ID 的应用场景非常普遍,如临时缓存文件名称,临时变量,临时安全码等,uniqid()函数基于以微秒计的当前时间,生成一个唯一的 ID。由于生成唯一 ID 与微秒时间关联,因此 ID 的唯一性非常可靠。
生成的唯一 ID 默认返回的字符串有 13 个字符串长,如果不定义唯一 ID 的前缀,最多可返回 23 个字符串长,如果再结合 md5()函数,生成的唯一 ID 可靠性将更高,这种生成的 ID 比随机性的 ID 最大优点在于可实现排序,特别是一些需要存储在数据库中的值。
定义和用法
uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID。
语法
uniqid(prefix,more_entropy)
说明
如果 prefix 参数为空,则返回的字符串有 13 个字符串长。如果 more_entropy 参数设置为 true,则是 23 个字符串长。
如果 more_entropy 参数设置为 true,则在返回值的末尾添加额外的熵(使用组合线形同余数生成程序),这样可以结果的唯一性更好。
返回值
以字符串的形式返回唯一标识符。
函数基础用法与实例
1 2 3 4 | //生成一个唯一ID <?php echo uniqid(); ?> |
1 2 3 4 | //结合md5()函数生成一个唯一ID <?php echo md5(uniqid()); ?> |