婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP生成隨機數的方法總結

PHP生成隨機數的方法總結

熱門標簽:長沙crm外呼系統業務 南寧高頻外呼回撥系統哪家好 400電話申請方法收費 電話機器人危險嗎 江蘇外呼電銷機器人報價 離石地圖標注 深圳外呼系統收費 專業電話機器人批發商 400電話辦理福州市

第一種方法用mt_rand()

function GetRandStr($length){ 
$str='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; 
$len=strlen($str)-1; 
$randstr=''; 
for($i=0;$i$length;$i++){ 
$num=mt_rand(0,$len); 
$randstr .= $str[$num]; 
} 
return $randstr; 
} 
$number=GetRandStr(6); 
echo $number; 

第二種方法(最快的)

function make_password( $length = 8 ) 
{ 
 // 密碼字符集,可任意添加你需要的字符 
 $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', '!', 
 '@','#', '$', '%', '^', '', '*', '(', ')', '-', '_', 
 '[', ']', '{', '}', '', '>', '~', '`', '+', '=', ',', 
 '.', ';', ':', '/', '?', '|'); 
 // 在 $chars 中隨機取 $length 個數組元素鍵名 
 $keys = array_rand($chars, $length); 
 $password = ''; 
 for($i = 0; $i  $length; $i++) 
 { 
  // 將 $length 個數組元素連接成字符串 
  $password .= $chars[$keys[$i]]; 
 } 
 return $password; 
} 

第三種取當時時間戳

function get_password( $length = 8 ) 
{ 
 $str = substr(md5(time()), 0, $length);//md5加密,time()當前時間戳 
 return $str; 
} 

第四種打亂字符串

function getrandstr(){ 
$str='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'; 
$randStr = str_shuffle($str);//打亂字符串 
$rands= substr($randStr,0,6);//substr(string,start,length);返回字符串的一部分 
return $rands; 
} 

 //開始創建驗證碼(直接用函數生成,比較方便快捷)

$code = rand(10000, 99999); 

php mt_rand生成0~1隨機小數的效果比較

lcg_value說明

float lcg_value ( void )

lcg_value() 返回范圍為 (0, 1) 的一個偽隨機數。本函數組合了周期為 2^31 - 85 和 2^31 - 249 的兩個同余發生器。本函數的周期等于這兩個素數的乘積。

返回:范圍為 (0, 1) 的偽隨機數。

?php 
for($i=0; $i5; $i++){ 
 echo lcg_value().PHP_EOL; 
} 
?> 

輸出:

0.11516515851995
0.064684551575297
0.68275174031189
0.55730746529099
0.70215008878091

兩種生成0~1隨機小數方法進行比較

1.執行時間比較

執行10萬次基于mt_rand()與mt_getrandmax()算法的運行時間

?php
/**
 * 生成0~1隨機小數
 * @param Int $min
 * @param Int $max
 * @return Float
 */
function randFloat($min=0, $max=1){
 return $min + mt_rand()/mt_getrandmax() * ($max-$min);
}

// 獲取microtime
function get_microtime(){
 list($usec, $sec) = explode(' ', microtime());
 return (float)$usec + (float)$sec;
}

// 記錄開始時間
$starttime = get_microtime();

// 執行10萬次獲取隨機小數
for($i=0; $i100000; $i++){
 randFloat();
}

// 記錄結束時間
$endtime = get_microtime();

// 輸出運行時間
printf("run time %f ms\r\n", ($endtime-$starttime)*1000);
?>

輸出:run time 266.893148 ms

執行10萬次lcg_value()的運行時間

?php
// 獲取microtime
function get_microtime(){
 list($usec, $sec) = explode(' ', microtime());
 return (float)$usec + (float)$sec;
}


// 記錄開始時間
$starttime = get_microtime();


// 執行10萬次獲取隨機小數
for($i=0; $i100000; $i++){
 lcg_value();
}


// 記錄結束時間
$endtime = get_microtime();


// 輸出運行時間
printf("run time %f ms\r\n", ($endtime-$starttime)*1000);
?>

輸出:run time 86.178064 ms

執行時間上比較,因為lcg_value()直接是php原生方法,而mt_rand()與mt_getrandmax()需要調用兩個方法,并需要進行計算,因此lcg_value()的執行時間大約快3倍。

2.隨機效果比較

基于mt_rand()與mt_getrandmax()算法的隨機效果

?php
/**
 * 生成0~1隨機小數
 * @param Int $min
 * @param Int $max
 * @return Float
 */
function randFloat($min=0, $max=1){
 return $min + mt_rand()/mt_getrandmax() * ($max-$min);
}


header('content-type: image/png');
$im = imagecreatetruecolor(512, 512);
$color1 = imagecolorallocate($im, 255, 255, 255);
$color2 = imagecolorallocate($im, 0, 0, 0);
for($y=0; $y512; $y++){
 for($x=0; $x512; $x++){
  $rand = randFloat();
  if(round($rand,2)>=0.5){
   imagesetpixel($im, $x, $y, $color1);
  }else{
   imagesetpixel($im, $x, $y, $color2);
  }
 }
}
imagepng($im);
imagedestroy($im);
?>

lcg_value()的隨機效果

?php
header('content-type: image/png');
$im = imagecreatetruecolor(512, 512);
$color1 = imagecolorallocate($im, 255, 255, 255);
$color2 = imagecolorallocate($im, 0, 0, 0);
for($y=0; $y512; $y++){
 for($x=0; $x512; $x++){
  $rand = lcg_value();
  if(round($rand,2)>=0.5){
   imagesetpixel($im, $x, $y, $color1);
  }else{
   imagesetpixel($im, $x, $y, $color2);
  }
 }
}
imagepng($im);
imagedestroy($im);
?>

您可能感興趣的文章:
  • PHP實現隨機數字、字母的驗證碼功能
  • 深入理解PHP中mt_rand()隨機數的安全
  • PHP簡單獲取隨機數的常用方法小結
  • PHP獲取redis里不存在的6位隨機數應用示例【設置24小時過時】
  • PHP基于自增數據如何生成不重復的隨機數示例
  • PHP內置函數生成隨機數實例

標簽:南京 興安盟 株洲 南昌 白酒營銷 濱州 曲靖 太原

巨人網絡通訊聲明:本文標題《PHP生成隨機數的方法總結》,本文關鍵詞  PHP,生成,隨機數,的,方法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP生成隨機數的方法總結》相關的同類信息!
  • 本頁收集關于PHP生成隨機數的方法總結的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    91超碰这里只有精品国产| 不卡av在线免费观看| 另类人妖一区二区av| 欧美三级三级三级| 亚洲成a人片综合在线| 欧美人与禽zozo性伦| 亚洲成人一区二区| 欧美一区二区成人| 精彩视频一区二区三区| 国产精品自拍网站| 日韩一区二区精品在线观看| 国产精品538一区二区在线| 视频一区国产视频| 中文字幕亚洲成人| 国产色一区二区| 久久久久久久久久久久久久久99| 成人午夜又粗又硬又大| 亚洲欧美在线观看| 在线观看日韩一区| 看片的网站亚洲| 中文字幕va一区二区三区| 色狠狠桃花综合| 天堂精品中文字幕在线| 精品99一区二区三区| 91在线小视频| 日韩精品福利网| 久久精品人人做人人爽97 | 在线免费观看日本欧美| 亚洲gay无套男同| 久久九九久久九九| 欧美精品一级二级| 波多野结衣中文字幕一区| 亚洲午夜国产一区99re久久| 国产日韩精品一区二区三区在线| 欧美最猛性xxxxx直播| 国产精品综合二区| 亚洲成av人片一区二区三区| 国产精品毛片大码女人| 精品国产91亚洲一区二区三区婷婷| 色综合久久88色综合天天| 国产精品996| 国模少妇一区二区三区| 丝袜亚洲精品中文字幕一区| 亚洲日本在线观看| 中文字幕二三区不卡| 91精品国产综合久久精品app| 91麻豆文化传媒在线观看| 福利电影一区二区三区| 国产米奇在线777精品观看| 免费亚洲电影在线| 午夜精品福利久久久| 一区二区激情小说| 国产欧美视频一区二区| 精品日韩在线一区| 欧美一区二区三区不卡| 欧美色电影在线| 欧美最猛性xxxxx直播| 91久久精品日日躁夜夜躁欧美| 丰满亚洲少妇av| 国产乱码精品一区二区三| 韩日精品视频一区| 韩国女主播一区| 欧美日韩中文一区| 欧美日韩国产免费一区二区| 欧美三片在线视频观看| 欧美精品久久一区二区三区| 日韩天堂在线观看| 久久尤物电影视频在线观看| 国产午夜精品福利| 中文一区在线播放| 亚洲三级在线播放| 亚洲成人激情av| 蜜桃精品视频在线观看| 激情综合色综合久久| 国产精品一区二区果冻传媒| 成人涩涩免费视频| 一本色道久久综合狠狠躁的推荐| 91福利视频久久久久| 欧美人狂配大交3d怪物一区| 欧美日韩免费在线视频| 91麻豆精品国产91久久久使用方法| 欧美一级搡bbbb搡bbbb| 26uuu国产日韩综合| 国产精品美女久久久久aⅴ| 中文字幕综合网| 国产成人在线看| 成人a免费在线看| 精品污污网站免费看| 日韩一区二区三区av| 精品粉嫩超白一线天av| 中文字幕中文字幕一区二区| 亚洲成人自拍网| 国产高清久久久| 欧美性感一区二区三区| 欧美精品一区二| 亚洲综合视频在线观看| 激情综合一区二区三区| 一本一本大道香蕉久在线精品| 欧美一区二区三区在线| 国产精品国产三级国产三级人妇| 爽好久久久欧美精品| 成人动漫av在线| 欧美一级免费大片| 亚洲三级免费观看| 激情六月婷婷久久| 欧美日韩情趣电影| 国产精品久久久久三级| 久久国产剧场电影| 欧美性猛片xxxx免费看久爱| 久久夜色精品国产噜噜av| 午夜av区久久| 在线亚洲精品福利网址导航| 国产精品视频yy9299一区| 秋霞电影网一区二区| 色综合色狠狠综合色| 精品国偷自产国产一区| 亚洲电影一区二区| 成人亚洲一区二区一| 欧美一卡二卡在线| 午夜精品久久久久久久久久久 | 日韩精品中文字幕一区| 国产精品福利电影一区二区三区四区| 亚洲综合免费观看高清完整版在线| 久久国产婷婷国产香蕉| 欧美精品久久天天躁| 亚洲国产美女搞黄色| 91天堂素人约啪| 欧美激情综合在线| 狠狠色综合日日| 日韩精品在线一区| 日韩成人午夜精品| 欧美精品亚洲一区二区在线播放| 国产欧美日韩麻豆91| 国产精品青草久久| 99久久精品免费看国产免费软件| 国产精品麻豆欧美日韩ww| 国产精品一区二区在线观看不卡| 精品国产乱码久久久久久久| 蜜臀av国产精品久久久久| 欧美成人伊人久久综合网| 毛片不卡一区二区| 精品久久久久一区| 国产综合久久久久久鬼色| 日韩视频免费观看高清完整版在线观看| 亚洲午夜影视影院在线观看| 欧美视频三区在线播放| 婷婷综合五月天| 欧美成人精品3d动漫h| 热久久久久久久| 精品国精品自拍自在线| 国产精品一卡二卡| 18涩涩午夜精品.www| 欧美性受xxxx黑人xyx性爽| 婷婷夜色潮精品综合在线| 日韩久久久久久| 成人激情免费视频| 亚洲一区二区欧美| 欧美不卡激情三级在线观看| 福利电影一区二区三区| 亚洲精品日产精品乱码不卡| 欧美精品久久天天躁| 国产一区二区不卡| 亚洲三级在线观看| 日韩欧美资源站| 国产很黄免费观看久久| 亚洲人亚洲人成电影网站色| 欧美在线色视频| 国产一区二区三区免费观看| 亚洲欧美一区二区在线观看| 国产精品免费免费| 欧美性受xxxx| 国产自产高清不卡| 亚洲天堂精品在线观看| 日韩一区二区三区电影| 大胆欧美人体老妇| 亚洲一区二区三区视频在线播放| 欧美一级搡bbbb搡bbbb| 成人午夜大片免费观看| 久久精品国产色蜜蜜麻豆| 亚洲激情欧美激情| 久久久精品国产免费观看同学| 欧美日韩中文国产| 成人免费看视频| 国内久久精品视频| 亚洲午夜精品在线| 中文字幕一区二区三区色视频 | 欧美国产精品一区二区三区| 欧美久久久久久蜜桃| 成人激情校园春色| 久久se精品一区二区| 午夜精品久久久久久久久久久 | 亚洲码国产岛国毛片在线| 欧美一区二区视频网站| 91电影在线观看| 不卡的av电影| 国产高清在线精品| 精品中文字幕一区二区小辣椒| 亚洲成在人线在线播放| 亚洲综合一二三区| 樱桃国产成人精品视频|