IT技术博客大学习 共学习 共进步

超级BT+无聊的订单号(或唯一编号)生成方法-_-

司徒楠,一个PHP程序员 2010-07-19 22:56:43 浏览 4,824 次

    适合电子商务系统或需要生成绝对唯一ID的系统

以下是代码片段:
function generateUniqueId($cutNum=20) 

    srand(microtime(TRUE) * 999999999999); 
    $unique_string = sha1(uniqid().uniqid(mt_rand(100000000000,999999999999))); 
    //return $unique_string; 
  
    $unique_id = ’’; 
  
    for($i=0,$j=strlen($unique_string);$i<$j;$i++) 
    { 
        $unique_id .= ord($unique_string{$i}); 
    } 
  
    return substr(date(’Ymd’).$unique_id,0,$cutNum); 

    时间只不过是一个点缀,同时也是为了方便一眼就能看清楚大概什么时候的订单或数据。可以不要。

建议继续学习

  1. 用MySQL实现发号器 (阅读 4,200)
  2. 订单号的生成规则 (阅读 2,981)