PHP 數組中取出隨機取出指定數量子值集


#關鍵:array_rand() 函數返回數組中的隨機鍵名,或者如果您規定函數返回不只一個鍵名,則返回包含隨機鍵名的數組。
#思路:先使用array_rand()隨機取出所需數量鍵名,然后將這些鍵名指向的值重新組合為數組
 1   /**
 2    * 數組中取出隨機取出指定數量子值集
 3    * @param $array array
 4    * @param $count int
 5    * @return array
 6    */
 7   function rand_arr_from_array($array, $count)
 8   {
 9     !is_int($count) && $count = intval($count);
10 
11     if ($count < 0) return false;
12 
13     $_arr_return = array();
14 
15     if ($count >= count($array)) {
16       $_arr_return = $array;
17     } else if ($count > 0) {
18       $temp = array_rand($array, $count);//隨機返回指定數量鍵值 $count > 1 返回鍵值數組,$count = 1 返回鍵值字符串,
19 
20       if ($count == 1) $temp = array($temp);
21 
22       //重組數組
23       foreach ($temp as $val) $_arr_return[] = $array[$val];
24     }
25 
26     return $_arr_return;
27   }
28 
29   $_arr_str = array('你', '看', '我', '哪', '里', '像', '好', '人');
30   $_count_random = '3';
31   print_r(rand_arr_from_array($_arr_str, $_count_random));


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM