У меня есть многомерный массив, и я хотел бы отфильтровать по многим значениям.
$datas = [
[
'id' => 2135,
'first_name' => 'John',
'last_name' => 'Doe',
'gender' => 'male'
],
[
'id' => 3245,
'first_name' => 'Sally',
'last_name' => 'Smith',
'gender' => 'female'
],
[
'id' => 5342,
'first_name' => 'Jane',
'last_name' => 'Doe',
'gender' => 'female'
],
[
'id' => 5623,
'first_name' => 'Peter',
'last_name' => 'Doe',
'gender' => 'male'
],
[
'id' => 7216,
'first_name' => 'Mike',
'last_name' => 'Lill',
'gender' => 'male'
]
];
Я объединил методы array_filter
и array_search
и получил хороший результат, но это только фильтрация только одного значения. Я хотел бы что-то вроде этого ...
array_filter(
$datas,
function ($key) {
return array_search(['Doe', 'male'...], $key);
});
и его дают
array(
array(
'id' => 2135,
'first_name' => 'John',
'last_name' => 'Doe',
'gender' => 'male'
),
array(
'id' => 5623,
'first_name' => 'Peter',
'last_name' => 'Doe',
'gender' => 'male'
)
)