可能重复:
PHP Built-in Method to Get Array Values Given a List of Keys
PHP是否具有此purpuse的内置函数?
我有两个数组,首先与一些数据相关联。例如:
$data = array(
'name' => 'John',
'last_name' => 'Smith',
'address' => 'NY, ...',
'phone' => '1234567'
);
另一个带键的数组:
$keys = array(
'name',
'last_name'
);
在使用此函数后,我只获得第一个数组的值,该数组包含来自第二个数组的键。
$result = function($data, $keys);
print_r($result);
// array(
// 'name' => 'Jonh',
// 'last_name' => 'Smith'
// )
答案 0 :(得分:4)
尝试以下方法:
$result = array_intersect_key($data, array_fill_keys($keys, null));
答案 1 :(得分:2)
$data = array(
'name' => 'John',
'last_name' => 'Smith',
'address' => 'NY, ...',
'phone' => '1234567'
);
$keys = array('name', 'last_name');
print_r(array_intersect_key($data, array_flip($keys)));