array_filter()
中的回调函数只传入数组的值,而不是键。
如果我有:
$my_array = array("foo" => 1, "hello" => "world");
$allowed = array("foo", "bar");
删除 $my_array
中所有不在 $allowed
数组中的键的最佳方法是什么?
期望的输出:
$my_array = array("foo" => 1);
最佳答案
与 array_intersect_key
和 array_flip
:
var_dump(array_intersect_key($my_array, array_flip($allowed)));
array(1) {
["foo"]=>
int(1)
}
关于php - 如何过滤关联数组,将键与索引数组中的值进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4260086/