《PHP實戰(zhàn):php生成隨機數(shù)的三種方法》要點:
本文介紹了PHP實戰(zhàn):php生成隨機數(shù)的三種方法,希望對您有用。如果有疑問,可以聯(lián)系我們。
如何用php生成1-10之間的不重復隨機數(shù)?PHP編程
例1,使用shuffle函數(shù)生成隨機數(shù).PHP編程
<?php $arr=range(1,10); shuffle($arr); foreach($arr as $values) { echo $values." "; } ?>
例2,使用array_unique函數(shù)生成隨機數(shù).PHP編程
<?php $arr=array(); while(count($arr)<10) { $arr[]=rand(1,10); $arr=array_unique($arr); } echo implode(" ",$arr); ?>
例3,使用array_flip函數(shù)生成隨機數(shù),可以去掉重復值.PHP編程
<?php $arr=array(); $count1=0; $count = 0; $return = array(); while ($count < 10) { $return[] = mt_rand(1, 10); $return = array_flip(array_flip($return)); $count = count($return); } //www.jb51.net foreach($return as $value) { echo $value." "; } echo "<br/>"; $arr=array_values($return);// 獲得數(shù)組的值 foreach($arr as $key) echo $key." "; ?>
php隨機數(shù)生成函數(shù)示例PHP編程
<?php function randpw($len=8,$format='ALL'){ $is_abc = $is_numer = 0; $password = $tmp =''; switch($format){ case 'ALL': $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; break; case 'CHAR': $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; break; case 'NUMBER': $chars='0123456789'; break; default : $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; break; } // www.jb51.net mt_srand((double)microtime()*1000000*getmypid()); while(strlen($password)<$len){ $tmp =substr($chars,(mt_rand()%strlen($chars)),1); if(($is_numer <> 1 && is_numeric($tmp) && $tmp > 0 )|| $format == 'CHAR'){ $is_numer = 1; } if(($is_abc <> 1 && preg_match('/[a-zA-Z]/',$tmp)) || $format == 'NUMBER'){ $is_abc = 1; } $password.= $tmp; } if($is_numer <> 1 || $is_abc <> 1 || empty($password) ){ $password = randpw($len,$format); } return $password; } for($i = 0 ; $i < 10; $i++){ echo randpw(8,'NUMBER'); echo "<br>"; }
PS:最后再為大家提供兩款相關(guān)在線工具供大家參考使用:PHP編程
《PHP實戰(zhàn):php生成隨機數(shù)的三種方法》是否對您有啟發(fā),歡迎查看更多與《PHP實戰(zhàn):php生成隨機數(shù)的三種方法》相關(guān)教程,學精學透。維易PHP學院為您提供精彩教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/14725.html