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位不重復的訂單號代碼實例的文章就介紹到這瞭,更多相關PHP隨機生成18位不重復的訂單號內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: