《php從數組中隨機取一個數值或元素的2種方法比較》要點:
本文介紹了php從數組中隨機取一個數值或元素的2種方法比較,希望對您有用。如果有疑問,可以聯系我們。
相關主題:PHP開發
PHP從數組中隨機取一個元素值。下面是兩種常用方法,略有小差別。
比如從這個數組中取一個元素。
$url=[ 'vephp.com', 'http://www.snjht.com', 'www.snjht.com' ];
方法1:使用array_rand() 取得隨機的一個下標key,再用這個下標去獲得隨機的數組元素。
$url[array_rand($url,1)];
方法2:使用rand()函數:
$url[rand (0,count ($url)-1)];
我推薦后者,因為在使用中會發現方法1的array_rand()每次抽取的變化機率不大,在同一批抽取中,經常都是一樣的。估計是隨機數發生器播種問題。
而rand函數PHP 4.2 起,不需要再用 srand() 或 mt_srand() 函數給隨機數發生器播種,已自動完成。因此變化機率大。
此外,rand的效率似乎也比array_rand高,不過沒做過壓測,有興趣可以自己寫個for大循環對比一下。
所以,具體看你的應用場景而定。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/143.html