-3

可能的重复:
PHP 内置方法来获取给定键列表的数组值

PHP 是否有针对这个目的的内置函数?

我有两个数组,第一个与一些数据相关联。例如:

$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'
// )
4

2 回答 2

4

试试下面的:

$result = array_intersect_key($data, array_fill_keys($keys, null));
于 2012-10-02T12:39:16.073 回答
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)));
于 2012-10-02T12:40:51.560 回答