0
获取阵列的子集是否有一个内置的功能:通过指定键
print_r(array_***([
'foo' => 1,
'bar' => 2,
'baz' => 3,
'qux' => 4,
], ['foo', 'qux']));
产生:
Array
(
[foo] => 1
[qux] => 4
)
?
获取阵列的子集是否有一个内置的功能:通过指定键
print_r(array_***([
'foo' => 1,
'bar' => 2,
'baz' => 3,
'qux' => 4,
], ['foo', 'qux']));
产生:
Array
(
[foo] => 1
[qux] => 4
)
?
你在找什么是array_intersect_key函数(http://www.php.net/manual/en/function.array-intersect-key.php)。
运行:
var_dump(array_intersect_key(array('foo'=>1,'bar'=>2,'baz'=>3,'qux'=>4),array('foo'=>true,'qux'=>true)));
应该给你:
array(2) { ["foo"]=> int(1) ["qux"]=> int(4) }
@FelixKling我从这个问题的答案试过功能。他们都返回空数组。 –
您还需要'array_flip':http://codepad.org/yXIB1ECZ –
更好的重复:[PHP:如何使用array_filter()来过滤数组键?](http://stackoverflow.com/q/4260086/218196 )。 –