我有一个名为$item_list
的多维数组:
Array
(
[0] => Array
(
[id] => 12
[customer] => Joe Bloggs
[details] => Text
)
[1] => Array
(
[id] => 13
[customer] => Fred Smith
[details] => Text
)
[2] => Array
(
[id] => 14
[customer] => John Doe
[details] => Text
)
)
我有一个来自不同数据库的另一个数组(因此,没有SQL解决方案),名为$id_list
,其中包含我想保留的$item_list
ID :
Array
(
[0] => 12
[1] => 14
)
我可以通过将$item_list[1]
与$item_list[1]['id']
中的元素进行比较而不使用$id_list
或类似方法手动迭代$item_list
数组来删除foreach()
吗? ?
答案 0 :(得分:3)
$keep = array(12, 14);
$data = array_filter($data, function ($a) use ($keep)
{
return in_array($a['id'], $keep);
});
请注意,您可以先array_flip
$keep
,然后使用isset()
获取更优化的解决方案。