這篇文章主要介紹PHP如何隨機生成18位不重復的訂單號,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
PHP代碼:
/**
* 生成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 //商戶訂單號 $number= generateOrderNumber(); ?>
以上是“PHP如何隨機生成18位不重復的訂單號”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。