加入收藏 | 设为首页 | 会员中心 | 我要投稿 梅州站长网 (https://www.0753zz.cn/)- 行业物联网、云备份、数据工具、云计算、智能推荐!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP 数组中随机抽取一些元素

发布时间:2022-07-24 10:49:53 所属栏目:PHP教程 来源:互联网
导读:随机抽取一些元素这个功能实现方法很简单,只要使用array_rand与range就可以实现了,如果随便抽取一个元素就直接使用mt_rand然后长成随机数长度不超过数组长度即可. 下面我先给大家提供几种方法,供大家参考. 方法-: 实例代码如下: $arr = range(1,10,1); $newa
  随机抽取一些元素这个功能实现方法很简单,只要使用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 )

(编辑:梅州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读