語法
mt_rand(min,max)
說明
如果沒有提供可選參數 min 和 max,mt_rand() 返回 0 到 RAND_MAX 之間的偽隨機數。例如想要 5 到 15(包括 5 和 15)之間的隨機數,用 mt_rand(5, 15)。
很多老的 libc 的隨機數發生器具有一些不確定和未知的特性而且很慢。PHP 的 rand() 函式默認使用 libc 隨機數發生器。mt_rand() 函式是非正式用來替換它的。該函式用了 Mersenne Twister 中已知的特性作為隨機數發生器,它可以產生隨機數值的平均速度比 libc 提供的 rand() 快四倍。
提示注釋
注釋:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函式給隨機數發生器播種,現在已自動完成。
注釋:在 3.0.7 之前的版本中,max 的含義是 range 。要在這些版本中得到和上例相同 5 到 15 的隨機數,簡短的例子是 mt_rand (5, 11)。
舉例說明
在本例中,會返回一些隨機數:
<?php
echo(mt_rand());
echo(mt_rand());
echo(mt_rand(10,100));
?>
輸出類似:
3150906288
513289678
35
例子
指定生成隨機數範圍
$rand = mt_rand(0,1);
if( $rand==0 )
{
$array = array(41,20,26,29,30);
}
elseif( $rand==1 )
{
$array = array(38,42,37,400,444);
}
foreach( $array as $v => $vv )
{
echo "$vvn";
}