Heim > Backend-Entwicklung > PHP-Tutorial > php生成随机数的三种方法_PHP教程

php生成随机数的三种方法_PHP教程

WBOY
Freigeben: 2016-07-13 10:19:14
Original
887 Leute haben es durchsucht

php生成随机数的三种方法

 如何用php生成1-10之间的不重复随机数?

例1,使用shuffle函数生成随机数。

 

1

2 $arr=range(1,10);

3 shuffle($arr);

4 foreach($arr as $values)

5 {

6   echo $values." ";

7 }

8 ?>

例2,使用array_unique函数生成随机数。

 

1

2 $arr=array();

3 while(count($arr)

4 {

5   $arr[]=rand(1,10);

6   $arr=array_unique($arr);

7 }

8 echo implode(" ",$arr);

9 ?>

例3,使用array_flip函数生成随机数,可以去掉重复值。

 

01

02 $arr=array();

03 $count1=0;

04 $count = 0;

05 $return = array();

06 while ($count

07  {

08   $return[] = mt_rand(1, 10);

09   $return = array_flip(array_flip($return));

10   $count = count($return);

11  } //www.jbxue.com

12 foreach($return as $value)

13  {

14   echo $value." ";

15  }

16 echo "
";

17 $arr=array_values($return);// 获得数组的值 

18 foreach($arr as $key)

19 echo $key." ";

20 ?>

php随机数生成函数示例

01

02 function randpw($len=8,$format='ALL'){

03 $is_abc = $is_numer = 0;

04 $password = $tmp ='';  

05 switch($format){

06 case 'ALL':

07 $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';

08 break;

09 case 'CHAR':

10 $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';

11 break;

12 case 'NUMBER':

13 $chars='0123456789';

14 break;

15 default :

16 $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';

17 break;

18 } // www.jbxue.com

19 mt_srand((double)microtime()*1000000*getmypid());

20 while(strlen($password)

21 $tmp =substr($chars,(mt_rand()%strlen($chars)),1);

22 if(($is_numer 1 && is_numeric($tmp) && $tmp > 0 )|| $format == 'CHAR'){

23 $is_numer = 1;

24 }

25 if(($is_abc 1 && preg_match('/[a-zA-Z]/',$tmp)) || $format == 'NUMBER'){

26 $is_abc = 1;

27 }

28 $password.= $tmp;

29 }

30 if($is_numer 1 || $is_abc 1 || empty($password) ){

31 $password = randpw($len,$format);

32 }

33 return $password;

34 }

35 for($i = 0 ; $i

36 echo randpw(8,'NUMBER');

37 echo "
";

38 }

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/876453.htmlTechArticlephp生成随机数的三种方法 如何用php生成1-10之间的不重复随机数? 例1,使用shuffle函数生成随机数。 1 ?php 2 $arr=range(1,10); 3 shuffle($arr); 4 fo...
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage