2012-04-17 56 views
0

我使用下面的代码PHP兰特()建议

$wID=rand(2, 4); 

生成从2号到4,怎样才能从2,但没有最大起动号码?

+0

总有一个最大...最大INT大小。在某些平台上这甚至更小。见http://www.php.net/manual/en/function.getrandmax.php – Brad 2012-04-17 16:44:17

+0

你的意思是尽可能多鉴于你目前的数值精度?使用该数字作为第二个参数到'rand()'。 – 2012-04-17 16:44:20

+1

只需要一个非常高的最大值,计算机中尚未提供无穷大。 – 2012-04-17 16:44:24

回答

5

使用mt_rand(这是更好)。

怎样才能从2,但没有最大起动号码?

没有电脑可以产生无限组数字。

如果您在不带参数的情况下致电mt_rand,它将返回一个介于0mt_getrandmax()之间的数字。所以,如果你愿意,你可以这样做:

$wID = mt_rand() + 2; 

或:

$wID = mt_rand(2, mt_getrandmax()); 

或只需输入您所选择的非常高的最大。

+0

mt_rand?有什么区别 – 2012-04-17 16:45:26

+0

根据文档'mt_rand'会产生一个更好的随机值。 – webbiedave 2012-04-17 16:49:56