采用PHP函数uniqid生成一个唯一的ID

生成唯一ID的应用场景非常普遍,如临时缓存文件名称,临时变量,临时安全码等,uniqid()函数基于以微秒计的当前时间,生成一个唯一的 ID。由于生成唯一ID与微秒时间关联,因此ID的唯一性非常可靠。生成的唯一ID默认返回的字符串有 13 个字符串长,如果不定义唯一ID的前缀,最多可返回23个字符串长,如果再结合md5()函数,生成的唯一ID可靠性将更高,这种生成的ID比随机性的ID 最大优点在于可实现排序,特别是一些需要存储在数据库中的值。

一,函数原型

  1. string uniqid ( [string prefix [, bool more_entropy]] ) 

可定义唯一ID的前缀与长度

二,版本兼容

PHP 3, PHP 4, PHP 5

三,函数基础用法与实例

1,生成一个唯一ID

  1. <?php  
  2. echo uniqid();  
  3. ?> 

2,结合md5()函数生成一个唯一ID

  1. <?php  
  2. echo md5(uniqid());  
  3. ?> 

输出:dfbc5c8c6438de075da28b3c8a413fd0

3,生成多个唯一ID,由于是以微秒计

  1. <?php  
  2. echo uniqid();  
  3. echo uniqid();  
  4. echo uniqid();  
  5. ?> 

输出:

4bfd0e375396b

4bfd0e3753981

4bfd0e3753983

由生成的结果来看,唯一ID之间具有可排序性的。

使用uniqid()函数生成唯一ID既能用于生成临时性ID也能用于生成永久性唯一ID(存储数据库),具体请参与PHP手册。

转载请注明:代码家园 » 采用PHP函数uniqid生成一个唯一的ID

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)