2014-09-13 2 views
0

У меня есть эти массивы:PHP - Поиск, если значения в массиве

$array = array(); 
array_push($array, array("id" => 1, "param" => "abc")); 
array_push($array, array("id" => 2, "param" => "def")); 
array_push($array, array("id" => 3, "param" => "ghi")); 

[{"id":1,"param":"abc"},{"id":2,"param":"def"},{"id":3,"param":"ghi"}] 


$search = array(1, 2); 

Мне нужно, чтобы удалить объект, делая поиск, если $ массив содержит $ поиска значение.

Окончательный массив должен идти, как это:

[{"id":3,"nom":"ghi"}] 

Есть идеи? Спасибо.

ответ

1
$arr = array_filter($array, function($obj) use($search) { 
    return !in_array($obj['id'], $search); 
}); 

В зависимости от того, как вы используете новый массив, возможно, придется re-index it.

Смежные вопросы