這篇文章將為大家詳細講解有關php該怎么生成100個不同的隨機數,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
方法:1、定義一個空數組,用于放置隨機數;2、利用“while(數組長度<100)”控制循環次數,保證數組最終中有100個數;3、循環體中使用mt_rand()隨機生成數放入數組中,并利用array_flip()去重,保證隨機數唯一即可。
本教程操作環境:windows7系統、PHP7.1版,DELL G3電腦
php生成100個不同的隨機數
<?php
/*
* array unique_rand( int $min, int $max, int $num )
* 生成一定數量的不重復隨機數
* $min 和 $max: 指定隨機數的范圍
* $num: 指定生成數量
*/
function unique_rand($min, $max, $num) {
$count = 0;
$return = array();
while ($count < $num) {
$return[] = mt_rand($min, $max);
$return = array_flip(array_flip($return));
$count = count($return);
}
shuffle($return);
return $return;
}
$arr = unique_rand(1, 1000, 100);
sort($arr);
$result = '';
for($i=0; $i < count($arr);$i++)
{
$result .= $arr[$i].',';
}
$result = substr($result, 0, -1);
echo $result;
?>輸出結果:
5,14,36,59,61,65,70,72,95,103,105,114,124,138,142,143,153,159,170,174,175,184,186,189,207,210,214,220,254,256,257,259,268,273,280,281,290,293,295,303,309,315,316,321,327,359,364,370,416,420,429,433,434,436,438,449,464,493,505,558,563,568,570,593,599,637,639,646,656,659,670,687,695,709,713,719,722,731,733,736,749,750,784,803,807,812,835,849,859,893,899,914,937,941,948,951,960,969,991,992
說明:
mt_rand() 使用 Mersenne Twister 算法返回隨機整數。語法:
mt_rand(min,max)
返回 min 和 max之間的一個隨機整數。
array_flip() 函數用于反轉/交換數組中的鍵名和對應關聯的鍵值。利用array_flip()函數我們可以去除數組中重復的元素。
只需要先使用array_flip()將鍵名和鍵值互換來移除重復值;然后再使用array_flip()重新將鍵名和鍵值調換回來即可
count() 函數返回數組中元素的數目,即計算數組長度。
關于php該怎么生成100個不同的隨機數就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。