㈠ php中如何生成1-15之間的隨機數
可以使用PHP math 函數 rand(1,15)直接返回即可。
定義和用法:rand() 函數返回隨機整數。
語法:rand(min,max)。
參數:min,max可選。規定隨機數產生的范圍。
說明:如果沒有提供可選參數 min 和 max,rand() 返回 0 到 RAND_MAX 之間的偽隨機整數。例如,想要 5 到 15(包括 5 和 15)之間的隨機數,用 rand(5, 15)。
(1)php時間隨機數擴展閱讀:
提示和注釋
注釋:在某些平台下(例如 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)。
㈡ PHP時間內隨機生成數字
如果實際情況和你給出的例子這么簡單,那就沒有必要隨機生成,使用 shuffle 打亂 array 其實就等於隨機了。
$arr = array(1,2,3,4,5);
print_r($arr); // 輸出 1,2,3,4,5
shuffle($arr); // 打亂順序
print_r($arr); // 輸出打亂順序的數字
或者,使用rand隨機生成。先復制一個相同的array,每生成一個隨機數,就把它從array中刪除,然後在剩餘的數字中再生成隨機。
$arr = array(1,2,3,4,5);
$arr_tmp = $arr;
for($i = 0; $i < count($arr_tmp) + $i; $i++) {
$rand = rand(0, count($arr_tmp) - 1);
echo "<p>第".($i + 1)."個隨機數:".$arr_tmp[$rand]."</p>";
unset($arr_tmp[$rand]);
$arr_tmp = array_values($arr_tmp);
}
㈢ php生成隨機數,在一定時間內不變,然後過了一定時間在生成另外一個隨機數
$一定時間內
=
1800秒
//取資料庫或者文本數據(裡面有你記錄的截止時間)
if(取出來的值為空)
{
$隨機數
=
新數據();
}
else
{//取出來的值不為空
if(
當前時間>記錄的截止時間
)
{//過期了,更新數據;
$隨機數
=
新數據();
}
$隨機數
=
取出來的舊隨機數
}
echo
$隨機數;//輸出這個隨機數
function
新數據()
{
//生成一個隨機數
//同時記錄截止時間
=
time()+
$一定時間內;
//將2個數據
或者寫文件里,或者寫資料庫里;
return
隨機數;
}