Rand()PHP函數(shù)

rand()函數(shù)在PHP中用于生成隨機(jī)整數(shù)。rand()PHP函數(shù)也可用于生成特定范圍內(nèi)的隨機(jī)數(shù),例如10到30之間的數(shù)字。

如果使用rand()PHP函數(shù)時未指定最大限制,則可返回的最大整數(shù)由getrandmax()函數(shù)確定,該函數(shù)因操作系統(tǒng)而異。

例如,在Windows中,可以生成的最大數(shù)量是32768。但是,您可以設(shè)置特定范圍以包含更高的數(shù)字。

Rand()語法和示例

使用rand PHP函數(shù)的正確語法如下:

rand();

蘭德(最小,最大);

使用上述語法,我們可以為PHP中的rand()函數(shù)做三個例子:


回聲(rand(10,30)。"
");
回聲(蘭德(1000000)。"
");
回聲(rand());
?>

正如您在這些示例中可以看到的,第一個rand函數(shù)生成10到30之間的隨機(jī)數(shù),第二個在100萬到100萬之間,然后第三個沒有定義任何最大或最小數(shù)。

這些是一些可能的結(jié)果:數(shù)學(xué)小知識大全

20
442549
830380191

使用Rand()函數(shù)的安全問題

此函數(shù)生成的隨機(jī)數(shù)不是隱式安全值,出于加密原因,不應(yīng)使用它們。如果您需要安全值,請使用其他隨機(jī)函數(shù),如random_int(),openssl_random_pseudo_bytes(),或random_bytes()

注意:從PHP 7.1.0開始,rand()PHP函數(shù)是mt?rand()的別名。據(jù)說mt?rand()函數(shù)快四倍,并產(chǎn)生更好的隨機(jī)值。但是,它生成的數(shù)字在加密上并不安全。The PHP手冊建議使用random_bytes()函數(shù)進(jìn)行隱式安全整數(shù)。