首页 > 解决方案 > 如何根据键删除数组列表?

问题描述

例如 :

Array   
(    
[0] => Array 
 (
     [id] => 23
     [merchant_id] => 23   
 )
[1] => Array 
 (
     [id] => 24
     [merchant_id] => 46  
 )
)

我想删除除46之外的merchant_id的列表,操作后:

Array   
    (    
    [0] => Array 
     (
         [id] => 24
         [merchant_id] => 46  
     )
    )

如何最好的方法来删除这个数组列表?

标签: phparraysjsoncodeigniter

解决方案


您可以使用array_filter如下方式获得结果

// suppose your data is in $data variable
$data = [
  ['id' => 23,
     'merchant_id' => 23],

  ['id' => 23,
     'merchant_id' => 46],

 ];

//return true only if marchant_id == 46 
$filtered_array = array_filter($data,function($datum){
                     return $datum["merchant_id"] == 46;
                  });

推荐阅读