PHP - 搜索值是否在数组中

时间:2014-09-13 20:30:30

标签: php arrays unset

我有这些数组:

$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);

如果 $ array 包含 $ search 值,我需要移除对象进行搜索。

最终的数组应该是这样的:

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

有什么想法吗?谢谢。

1 个答案:

答案 0 :(得分:1)

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

根据您使用新阵列的方式,您可能需要re-index it