PHP 不用資料庫,在網頁上隨機顯示某幾張不重覆圖片 & 產生幾個不重複的隨機數字
不使用資料庫來達到隨機顯示某幾張不重覆圖片的 PHP 寫法
範例:
紅色字部份
,或直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^^ (當然您須有那些檔名的圖檔唄!)<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 不需資料庫,在網頁上隨機顯示某張圖片 & 生成一定數量的不重複隨機數字</title> </head> <body> <?php
//笨兔在 gif/ 目錄下,放了檔名 slide-1.jpg ~ slide-36.jpg 的36張圖檔
$img1=mt_rand(1,36); //1到36亂數取出一個數字, 並以一半18來做判定依據
if($img1<=18){ //若隨機出現的數字<=18,則加某數來生成其它四個數字。(不會超過36為原則)
$img2=$img1+2;
$img3=$img1+7;
$img4=$img1+10;
$img5=$img1+16;
}else{
$img2=$img1-3; //若隨機出現的數字>18,則減某數來生成其它四個數字。(不會<=0為原則)
$img3=$img1-8;
$img4=$img1-12;
$img5=$img1-17;
}
?>
<div align="center">
顯示隨機產生的第1張圖:<img src="gif/slide-<?php echo $img1; ?>.jpg"><br>
顯示隨機產生的第2張圖:<img src="gif/slide-<?php echo $img2; ?>.jpg"><br>
顯示隨機產生的第3張圖:<img src="gif/slide-<?php echo $img3; ?>.jpg"><br>
顯示隨機產生的第4張圖:<img src="gif/slide-<?php echo $img4; ?>.jpg"><br>
顯示隨機產生的第5張圖:<img src="gif/slide-<?php echo $img5; ?>.jpg"><br>
</div>
</body> </html>
範例結果:您每次進來或重整所看到的圖應都會有所不同唄!^ ^
產生幾個不重複的隨機數字的 PHP 寫法
範例:
程式碼如下,自行參研唄!^ ^ 主要看紅色字部份
,或直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^^
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 不需資料庫,在網頁上隨機顯示某張圖片 & 生成一定數量的不重複隨機數字</title> </head> <body> <?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, 50, 15); //1~50,隨機生成15個不重覆的數字
sort($arr);
$result = '';
for($i=0; $i < count($arr);$i++){
$result .= '隨機生成的第'.($i+1).'個不重覆數字:'.$arr[$i].'<br>';
}
$result = substr($result, 0, -1);
echo $result;
?>
</body> </html>
範例結果:您每次進來或重整所看到的圖應都會有所不同唄!^ ^
隨機生成的第1個不重覆數字:10