如何使用键值过滤数组

时间:2017-12-29 06:35:17

标签: php arrays multidimensional-array

我有这个数组,所以如何使用键值来过滤我希望 per_hour 介于10到70之间,性别 = M

但在我的情况下,我必须添加条件,如果per_hour参数设置或性别参数设置如果设置比组合结果将显示其他明智的设置参数的结果

那么我如何使用per_hour和性别提供文件请提供sollution

google-services.json

2 个答案:

答案 0 :(得分:2)

您可以将函数设置为array_filter的回调以检查per_hour和性别

$filter = array_filter($array, function($e){
    return ($e['tutor']['per_hour'] == 50 && $e['tutor']['gender'] == 'M');
});

print_r($filter);

答案 1 :(得分:0)

尝试使用 array_map 功能。 例如:

$myarray=array(array('tutor'=>array('genedr'=>'M','per_hour'=>50)));
$result_array=array_map($myarray,function($ar){ return ($ar['tutor']['per_hour']==50 && $ar['tutor']['gender']=="M") })?$ar['tutor']:'';
$filterdArray=array_filter($result_array);
print_r($result_array);