萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP 數組中隨機抽取一些元素

PHP 數組中隨機抽取一些元素

隨機抽取一些元素這個功能實現方法很簡單,只要使用array_rand與range就可以實現了,如果隨便抽取一個元素就直接使用mt_rand然後長成隨機數長度不超過數組長度即可。

下面我先給大家提供幾種方法,供大家參考。


方法-:

 代碼如下 復制代碼

$arr = range(1,10,1);
   
$newarr = array_rand($arr,6);    //隨機獲取6個數組中的鍵
   
$newArr = array_flip($newarr);   //鍵與值互換
   
$arr3 = array_diff_key($arr,$newArr); //取鍵相同的
   
$arr1 = array_diff_key($arr,$arr3);  //取鍵相同的
   
print_r($arr1);

結果: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [5] => 6 [9] => 10 )

方法二:

 代碼如下 復制代碼

$arr = range(1,10,1);
   
$newarr = array_rand($arr,6);    //隨機獲取6個數組中的鍵
   
$ArrNew = array();
   
foreach($newarr as $k=>$v)

   $ArrNew[$v] = $arr[$v];    
}
   
print_r($ArrNew);

結果:Array ( [1] => 2 [2] => 3 [3] => 4 [4] => 5 [6] => 7 [7] => 8 )

方法三:這種方法沒有保留鍵名,供大家參考一下.

 代碼如下 復制代碼

$arr = range(1,10,1);
  
shuffle($arr);   //打亂數組
  
$newarr = array_splice($arr,0,6);
  
print_r($newarr);

結果:Array ( [0] => 7 [1] => 4 [2] => 2 [3] => 10 [4] => 9 [5] => 6 )

copyright © 萬盛學電腦網 all rights reserved