|
首先來認識一下php提供的隨機數(shù)函數(shù)rand()。php的rand()函數(shù)將返回隨機整數(shù),具體使用方法如下
rand(min,max)
可選參數(shù)min和max可以使rand() 返回0到RAND_MAX之間的偽隨機整數(shù)。例如,想要5到15(包括 5 和 15)之間的隨機數(shù),用 rand(5, 15)。
下面我來看一個具體的示例,我們做一個基本的函數(shù)調用,不設置具體的參數(shù),我們得到的隨機數(shù)將不受min和max兩個參數(shù)的限制。
復制代碼 代碼如下:
<? echo(rand());?>
得到的結果:652696728 (隨機結果)1、使用php生成指定區(qū)間內的隨機數(shù)如果我們要生成兩個數(shù)字之間的隨機數(shù),我們需要為rand設定兩個參數(shù):這樣,我們得到的結果就在我們的控制之中,他應該是MinNum <= result <= MaxNum;假設我們要使用php生成10000到2000之間的隨機數(shù),我們的代碼應該這樣寫:
復制代碼 代碼如下:
echo(rand(1000,2000));?>
夠簡單吧,下面來點稍微有些難度的。在本文的開始我們說過,隨機數(shù)的作用很大,我們可以用php隨機數(shù)解決一些復雜的問題。2、使用php獲得一個集合中的隨機元素將設我們需要從一個數(shù)組中獲得一個隨機元素
復制代碼 代碼如下:
$my_array=array('ASP','php','JavaSCRIPT','AJAX','CSS','JQUERY','HTML');
echo($my_array[rand(0,6)]);
?>
可以想象,我們得到的結果可能是ASP、php或JavaScript等任何一個包含在數(shù)組中的元素。注意,我們的my_array數(shù)組包含七個元素,我們將rand()的參數(shù)設置為0到6之間。下面我們使用兩組隨機數(shù)對上面的示例做功能增強,我們需要一個隨機數(shù)進行條件判斷,另一個隨機數(shù)做元素的輸出。
復制代碼 代碼如下:
$my_array=array('ASP','php','JavaSCRIPT','AJAX','CSS','JQUERY','HTML');
$repetition=rand(0,6);
for($i=0;$i<=$repetition;$i++){
echo('I am learning ' . $my_array[rand(0,6)]);
echo(' on 51CTO.com');
}
?>
我們得到的結果可能像下面這樣:
php隨機數(shù)結果示例 src="/d/file/itjie/phpjishu/2014-10-22/dda7eb31713d32dff07036f82b72072e.jpg" width=427 onload="Javascript:if(this.width>498)this.width=498;" border=0>
第一次運行我們得到三條結果
由于我們使用一個隨機數(shù)限定顯示的條數(shù),所以得到的結果除了文章隨機,顯示的條數(shù)也是隨機的,如下圖:
php隨機數(shù) src="/d/file/itjie/phpjishu/2014-10-22/226c4c1c182c53d170ec3522a7a74bc5.jpg" width=425 onload="Javascript:if(this.width>498)this.width=498;" border=0>
第二次運行得到七條結果
也許你會問,php隨機數(shù)只能做這些無聊的事兒嗎?rand( )看來并不是那么重要;你錯了,想想隨處可見的驗證碼、一些CMS系統(tǒng)的隨機文章提取、下載地址分配等,隨機數(shù)在這些應用中發(fā)揮著重要作用;另外,在安全和算法領域,隨機數(shù)的很多應用也值得我們去深入研究,比如加密和同余法結構等。
php技術:PHP隨機數(shù)生成代碼與使用實例分析,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。