撰寫日期:2016-7-20 16:00:24
有5個數:1 4 7 9 6
用PHP實現隨機抽取5個數中的其中一個
方法一:
<?php $test = array(1,4,7,9,6);//對這5個數建立數字索引數組,則索引值為0到4 $i = rand(0,4);//隨機生成一個0,到4之間的整形數字,包括0和4 echo $test[$i]; ?>
方法二:
把5個數組放入一個數組里,然后再用PHP自帶的函數array_rand()獲取
array_rand()函數,它可以從一個數組中隨機取一個或者多個下標出來,有了下標,就可以從原數組拿到對應的元素了。
它的用法也很簡單:array_rand($arr[, $num])
其中,$arr 是 要從中取元素的目標數組
$num 是 隨機取下標的個數
其中第二個參數 $num 是可選的,默認為1 (通常不設該參數)。
注意:它的返回值在第二個參數大於 1 的時候是一個數組;當第二個參數不設或者傳值 1 的時候是一個下標。
針對第二個參數傳與不傳值,又分為兩種情況。代碼如下:
1、第二個參數不傳值的情況:
<?php
//$arr = Array(1,4,7,9,6); //PHP是區分大小寫的,Array()需要寫成array()才行,
$arr = array(1,4,7,9,6); $Key = array_rand($arr); //得到的$Key是個數 echo $arr[$Key]; //輸出5個數的其中一個 ?>
2、第二個參數傳值大於 1 的情況:
<?php $arr = array(1,4,7,9,6); $Key = array_rand($arr, 2); print_r($Key); //輸出一個隨機key的數組,即隨機從$arr的所有key值中取出2個,“2”是隨機取多少個key值的個數,可變 ?>