2012-04-17 112 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