- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
如何用php生成1-10之間的不重復隨機數?
例1,使用shuffle函數生成隨機數。
<?php
$arr=range(1,10);
shuffle($arr);
foreach($arr as $values){
echo $values." ";
}
?>
例2,使用array_unique函數生成隨機數。
<?php
$arr=array();
while(count($arr)<10){
$arr[]=rand(1,10);
$arr=array_unique($arr);
}
echo implode(" ",$arr);
?>
例3,使用array_flip函數生成隨機數,可以去掉重復值。
$arr=array();
$count1=0;
$count = 0;
$return = array();
while ($count < 10) {
$return[] = mt_rand(1, 10);
$return = array_flip(array_flip($return));
$count = count($return);
}
foreach($return as $value) {
echo $value." ";
}
echo "<br/>";
$arr=array_values($return);// 獲得數組的值
foreach($arr as $key)
echo $key." ";
例4,
//range 是將1到100 列成一個數組
$numbers = range (1,100);
//shuffle 將數組順序隨即打亂
shuffle ($numbers);
//array_slice 取該數組中的某一段
$no=6;
$result = array_slice($numbers,0,$no);
for ($i=0;$i<$no;$i++){
echo $result[$i]."<br>";
}
print_r($result);
例5,
$numbers = range (1,20);
srand ((float)microtime()*1000000);
shuffle ($numbers);
while (list (, $number) = each ($numbers)) {
echo "$number ";
}
提交成功!非常感謝您的反饋,我們會繼續努力做到更好!
這條文檔是否有幫助解決問題?
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP