我将如何创建一个按值过滤二维数组的函数?给定以下数组:Array( [0] => Array ( [interval] => 2014-10-26 [leads] => 0 [name] => CarEnquiry [status] => NEW [appointment] => 0 ) [1] => Array ( [interval] => 2014-10-26 [leads] => 0 [name] => CarEnquiry [status] => CALL1 [appointment] => 0 ) [2] => Array ( [interval] => 2014-10-26 [leads] => 0 [name] => Finance [status] => CALL2 [appointment] => 0 ) [3] => Array ( [interval] => 2014-10-26 [leads] => 0 [name] => Partex [status] => CALL3 [appointment] => 0 )我将如何过滤数组以仅显示name键中包含特定值的那些数组?例如name = 'CarEnquiry'。结果输出为:Array( [0] => Array ( [interval] => 2014-10-26 [leads] => 0 [name] => CarEnquiry [status] => NEW [appointment] => 0 ) [1] => Array ( [interval] => 2014-10-26 [leads] => 0 [name] => CarEnquiry [status] => CALL1 [appointment] => 0 ) )编辑我忘了提及搜索值应该是可互换的-即name = 'CarEnquiry'或name = 'Finance'。
3 回答
![?](http://img1.sycdn.imooc.com/545862db00017f3402200220-100-100.jpg)
一只斗牛犬
TA贡献1784条经验 获得超2个赞
将PHP的array_filter函数与回调一起使用。
$new = array_filter($arr, function ($var) {
return ($var['name'] == 'CarEnquiry');
});
编辑:如果需要可互换,则可以稍微修改代码:
$filterBy = 'CarEnquiry'; // or Finance etc.
$new = array_filter($arr, function ($var) use ($filterBy) {
return ($var['name'] == $filterBy);
});
![?](http://img1.sycdn.imooc.com/545847d40001cbef02200220-100-100.jpg)
神不在的星期二
TA贡献1963条经验 获得超6个赞
<?php
function filter_array($array,$term){
$matches = array();
foreach($array as $a){
if($a['name'] == $term)
$matches[]=$a;
}
return $matches;
}
$new_array = filter_array($your_array,'CarEnquiry');
?>
- 3 回答
- 0 关注
- 842 浏览
添加回答
举报
0/150
提交
取消