一個辦法做到這一點,而無需陣列存儲器或數據庫,是按照增量映像的命名約定,例如命名您的圖片「banner1.jpg」,「banner2.jpg」,等等,那麼你可以只是這樣做:
$int_banners = 10; // the number of banner images you have
$i = rand(1, $int_banners);
echo "<a href='#'><img src='banner$i.jpg' alt=''></a>"; // add an iframe too if you want
如果你不能使用這樣的約定,那麼你可以只使用文件名的數組(或使用SQL數據庫來存儲橫幅,在其他的答案的建議)。
$lst_banners = array("img1.jpg", "/home/img2.jpg", "/about/img3.jpg");
$int_banners = count($lst_banners);
$i = rand(0, ($int_banners - 1));
echo "<a href='#'><img src='" . $lst_banners[$i] . "' alt=''></a>";
或者更好的,你可以使用array_rand()找到的文件名,由Zlatan的建議:
$lst_banners = array("img1.jpg", "/home/img2.jpg", "/about/img3.jpg");
$name = array_rand($lst_banners, 1);
echo "<a href='#'><img src='$name' alt=''></a>";
你橫幅存儲在數據庫中?如果是的話,你可以使用SQL隨機;) – ChaosClown
http://php.net/manual/en/function.array-rand.php – 2012-10-28 10:44:33