php產生不重複的序號的方法:可以利用內建函數【mt_rand()】來實現,【mt_rand()】函數用於產生隨機整數,例如要產生一個介於10和100之間的隨機整數,具體代碼為:【mt_rand(10, 100)】。
php為我們提供了專門用於產生隨機數的函數mt_rand(),該函數以 Mersenne Twister 演算法產生隨機整數。
提示:此函數是產生隨機值的較好選擇,回傳結果的速度是 rand() 函數的 4 倍。
(推薦教學:php影片教學)
範例:
產生一個介於10 和100 之間(包含10 和100)的隨機整數
mt_rand (10,100)
函數語法:
mt_rand(); or mt_rand(min,max);
參數:
min 可選。規定傳回的最小數。預設是 0。
max 可選。規定返回的最大數。
傳回值:
介於 min(或 0)與 max(或 mt_getrandmax())之間(包括邊界值)的隨機整數。如果 max < min 則回傳 FALSE。
(相關推薦:php訓練)
程式碼實作:
//生成随机码 function GetRandStr($len=10){ $chars = array( "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" ); $charsLen = count($chars) - 1; shuffle($chars); $output = ""; for ($i=0; $i<$len; $i++) { $output .= $chars[mt_rand(0, $charsLen)]; } return $output; } //生成不在$arr中的序列号 function getUniqueSerial($arr){ $str = GetRandStr(64); if(in_array($str, $arr)){ $str = getUniqueSerial($arr); } return $str; }
以上是php如何產生不重複的序號的詳細內容。更多資訊請關注PHP中文網其他相關文章!