用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

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

时间:2015-01-23  来源:西部数据  作者:西部数据

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

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

语法

rand(min,max)参数 描述 

min,max 可选.规定随机数产生的范围.

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

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

实例代码如下:

  1. //第一步:初始化种子  
  2. $seedarray =microtime();  
  3. $seedstr =split(" ",$seedarray,5);  
  4. $seed =$seedstr[0]*1000000;  
  5.    
  6. //第二步:使用种子初始化随机数发生器 
  7. 实例代码如下: 
  8. srand($seed);  
  9.    
  10. //第三步:生成指定范围内的随机数 

实例代码如下:

  1. $random =rand(0,1000); 

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

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

实例代码如下:

  1. srand((double)microtime()*1000000);  
  2. $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).

来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
栏目更新
栏目热门