相信大家對rand()函數並不陌生、很多小夥伴在開發過程中都要是到這個函數,都知道這函數是生成php隨機數的,rand()函數是將傳回php隨機數的整數!今天就帶大家具體了解php隨機數產生的rand()函數!
首先來認識php提供的隨機數字函數rand(),php的rand()函數會傳回隨機整數,具體使用方法如下:
rand(min,max)
可選參數min和max可以使rand() 傳回0到rand_max之間的偽隨機整數,例如,想要5到15(包括5 和15)之間的隨機數,用rand(5, 15).
下面我來看一個具體的範例,我們做一個基本的函數呼叫,不設定具體的參數,我們得到的隨機數將不受min和max兩個參數的限制,程式碼如下:
得到的結果:652696728 (隨機結果)1、使用php產生指定區間內的隨機數如果我們要產生兩個數字之間的隨機數,我們需要為rand設定兩個參數:這樣,我們得到的結果就在我們的控制之中,他應該是minnum <= result <= maxnum;假設我們要使用php產生10000到2000之間的隨機數,我們的程式碼應該這樣寫:
echo(rand(1000,2000));?>
夠簡單吧,下面來點稍微有些難度的,在本文的開始我們說過,隨機數的作用很大,我們可以用php隨機數解決一些複雜的問題,2、使用php獲得一個集合中的隨機元素將設我們需要從一個陣列中獲得一個隨機元素,程式碼如下:
$my_array=array('asp','php','网页','ajax','css','jquery','html'); echo($my_array[rand(0,6)]);
可以想像,我們得到的結果可能是asp、php或javascript等任何一個包含在陣列中的元素,注意,我們的my_array數組包含七個元素,我們將rand()的參數設置為0到6之間,下面我們使用兩組隨機數對上面的示例做功能增強,我們需要一個隨機數進行條件判斷,另一個隨機數做元素的輸出,程式碼如下:
$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隨機數只能做這些無聊的事兒嗎?rand( )看來並不是那麼重要;你錯了,想想隨處可見的驗證碼、一些cms系統的隨機文章提取、下載地址分配等,隨機數在這些應用中發揮著重要作用,另外,在安全和算法領域,隨機數的很多應用也值得我們去深入研究,比如加密和同餘法結構,程式碼如下:
$ip2id= round(rand(600000, 2550000) / 10000); //第一种方法,直接生成 $ip3id= round(rand(600000, 2550000) / 10000); $ip4id= round(rand(600000, 2550000) / 10000); //下面是第二种方法,在以下数据中随机抽取 $arr_1 = array("218","218","66","66","218","218","60","60","202","204","66","66","66","59","61","60","222", "221","66","59","60","60","66","218","218","62","63","64","66","66","122","211"); $randarr= mt_rand(0,count($arr_1)-1); $ip1id = $arr_1[$randarr]; echo $ip1id; echo "."; echo $ip2id; echo "."; echo $ip3id; echo "."; echo $ip4id; ?>
總結:
#本文就是要跟大家介紹一下php隨機數產生的rand()函數,對於很多小夥伴們來說是一個很不錯的選擇,希望對你工作有所幫助~
相關推薦:
##以上是php隨機數產生的rand()函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!