> 백엔드 개발 > PHP 튜토리얼 > php rand() 随机数生成的方法介绍_PHP教程

php rand() 随机数生成的方法介绍_PHP教程

WBOY
풀어 주다: 2016-07-13 17:13:50
원래의
970명이 탐색했습니다.

在php生成随机数有很多种方法rand()只是其实一种还有mt_rand()这个函数也可以生成,区别我就不说了下面来看看。

rand() 函数返回随机整数。

语法
rand(min,max)参数 描述
min,max 可选。规定随机数产生的范围。

如果没有提供可选参数 minmax,rand() 返回 0 到 RAND_MAX 之间的伪随机整数。例如,想要 5 到 15(包括 5 和 15)之间的随机数,用 rand(5, 15)。

在PHP中,要生成一个随机数,可以经过如下三个步骤:

 代码如下 复制代码
//第一步:初始化种子
$seedarray =microtime();
$seedstr =split(" ",$seedarray,5);
$seed =$seedstr[0]*1000000;

 
//第二步:使用种子初始化随机数发生器

 代码如下 复制代码
srand($seed);

 
//第三步:生成指定范围内的随机数

 代码如下 复制代码
$random =rand(0,1000);

其中,前面两步都不需要进行修改,就是最后一步,(0,1000)表示在0到1000中产生一个随机数(包括0在内),这个范围可以修改成你自己需要的范围。

还有一种生成随机数的更加简化的代码:

 代码如下 复制代码

srand((double)microtime()*1000000);
$random =rand(0,1000);

其中,microtime()返回了两个值:当前毫秒数和时间戳。由于我们只是要提取随机数,因而利用毫秒数即可。(double)microtime()的意思就是只返回当前的毫秒值。microtime()是以秒为单位的毫秒数,因而值都是小数,乘以1000000将其换算为整数。第二句代码表示在0到1000中生成一个随机数。

提示和注释
注释:在某些平台下(例如 Windows)RAND_MAX 只有 32768。如果需要的范围大于 32768,那么指定 min 和 max 参数就可以生成大于 RAND_MAX 的数了,或者考虑用 mt_rand() 来替代它。

注释:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现在已自动完成。

注释:在 3.0.7 之前的版本中,max 的含义是 range 。要在这些版本中得到和上例相同 5 到 15 的随机数,简短的例子是 rand (5, 11)。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/629086.htmlTechArticle在php生成随机数有很多种方法rand()只是其实一种还有mt_rand()这个函数也可以生成,区别我就不说了下面来看看。 rand() 函数返回随机整数。...
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿