array_rand() 在你想從數組中取出一個或多個隨機的單元時相當有用。它接受 input 作為輸入數組和一個可選的參數 num_req,指明了你想取出多少個單元 - 如果沒有指定,默認為 1。
array_rand -- 從數組中隨機取出一個或多個單元
mixed array_rand ( array input [, int num_req])
array_rand() 在你想從數組中取出一個或多個隨機的單元時相當有用。它接受 input 作為輸入數組和一個可選的參數 num_req,指明了你想取出多少個單元 - 如果沒有指定,默認為 1。
如果你只取出一個,array_rand() 返回一個隨機單元的鍵名,否則就返回一個包含隨機鍵名的數組。這樣你就可以隨機從數組中取出鍵名和值。
不要忘記調用 srand() 來撒下隨機數發生器的種子。
例子 1. array_rand() 例子
srand ((float) microtime() * 10000000); $input = array ("Neo", "Morpheus", "Trinity", "Cypher", "Tank"); $rand_keys = array_rand ($input, 2); print $input[$rand_keys[0]]."\n"; print $input[$rand_keys[1]]."\n";
我們曾經訪問過這樣的網站,每次刷新banner都隨機的變化,在這篇文章中,我們將給大家介紹用PHP來實現這個功能。
步驟
程序實現的原理是:調用一個數組,每個圖象對應一個數組中的元素,然後我們設置隨機數,只要隨機得到一個數據就可以顯示一副圖象了。
第一個步是我們來產生一個隨機數。每次刷新時我們都得到不同的隨機數,具體代碼為:
srand((float) microtime() * 10000000);
之後我們設置一個數組為image,然後再設置5個數組元素,代碼如下:
$image[1]='/location/of/image1.jpg'; $image[2]='/location/of/image2.jpg'; $image[3]='/location/of/image3.jpg'; $image[4]='/location/of/image4.jpg'; $image[5]='/location/of/image5.jpg';
下面的代碼實現的功能是從數組中隨機選擇一個元素:
$rn = array_rand($image);
然後我們來顯示一個隨機的圖片:
echo '<img src="'.$image[$rn].'">';
把上面的代碼組合起來就可以了。
srand((float) microtime() * 10000000); $image[1]='/location/of/image1.jpg'; $image[2]='/location/of/image2.jpg'; $image[3]='/location/of/image3.jpg'; $image[4]='/location/of/image4.jpg'; $image[5]='/location/of/image5.jpg'; $rn = array_rand($image); echo '<img src="'.$image[$rn].'">';
以上的代碼是我們隨機顯示圖片的代碼,如果我們想使每個圖片再加上各自的連接地址那麼我們把上述的代碼稍微改動下就可以了!把上述的數組改為二維數組:
$image[1]['pic']='/location/of/image1.jpg'; $image[1]['link']='/location/of/link1.php';
相應的顯示代碼為:
echo '<a href="'.$image[$rn]['link'].'">'; echo '<img src="'.$image[$rn]['pic'].'">';
那麼我們就可以完成我們標題的功能了,隨機顯示圖片並且連接到不同的指定的地址:
srand((float) microtime() * 10000000); $image[1]['pic']='/location/of/image1.jpg'; $image[1]['link']='/location/of/link1.php'; $image[2]['pic']='/location/of/image2.jpg'; $image[2]['link']='/location/of/link2.php'; $image[3]['pic']='/location/of/image3.jpg'; $image[3]['link']='/location/of/link3.php'; $image[4]['pic']='/location/of/image4.jpg'; $image[4]['link']='/location/of/link4.php'; $image[5]['pic']='/location/of/image5.jpg'; $image[5]['link']='/location/of/link5.php'; $rn = array_rand($image); echo '<a href="'.$image[$rn]['link'].'">'; echo '<img src="'.$image[$rn]['pic'].'">';
你可以把上面的代碼拷到你的網頁中去運行了。祝你好運
原文地址:http://www.manongjc.com/article/833.html
相關閱讀:
php從一個數組中隨機的取出若干個不同的數
php 數組生成隨機數函數shuffle()和array_rand()
php從數組中隨機取出若干個值
php 隨機獲取/取出數組中值的幾種方法
php生成多個不重復隨機數的幾種方法
JavaScript 獲取指定范圍內的隨機數
javascript 獲取m到n之間的隨機隨機數