/**
* 生成18位訂單號
* $length:隨機數長度
*/
function generateOrderNumber($length=4){
//14位的日期(年月日時分秒)
$date=trim(date('Ymdhis ',time()));
//初始化變量為0
$connt = 0;
//建一個新數組
$temp = array();
while($connt $length){
//在一定范圍內隨機生成一個數放入數組中
$temp[] = mt_rand(0, 9);
//$data = array_unique($temp);
//去除數組中的重復值用了“翻翻法”,就是用array_flip()把數組的key和value交換兩次。這種做法比用 array_unique() 快得多。
$data = array_flip(array_flip($temp));
//將數組的數量存入變量count中
$connt = count($data);
}
//為數組賦予新的鍵名
shuffle($data);
//數組轉字符串
$str=implode(",", $data);
//替換掉逗號
$number=str_replace(',', '', $str);
return $date.$number;
}
到此這篇關于PHP隨機生成18位不重復的訂單號代碼實例的文章就介紹到這了,更多相關PHP隨機生成18位不重復的訂單號內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!