1

我有两个关联数组

$reference = array(
  'type_drink' => 'value', 
  'type_plate' => 'value', 
  'type_fork' => 'value', 
  'non_type' => 'value'
);
$target = array(
  'type_plate' => 'value other', 
  'type_drink' => 'value other'
);

什么是重新排序目标以匹配键的 $reference 顺序并忽略 $target 中不存在的键的好方法,以便最终

$target = array(
  'type_drink' => 'value other',
  'type_plate' => 'value other' 
);
4

2 回答 2

2

不确定这是否是您所需要的,但这就是我解释您所要求的内容。

foreach($reference as $key => $val)
{
    if(isset($target[$key]))
        $tmp[$key] = $target[$key];
}
$target = $tmp;
于 2013-08-01T20:40:04.253 回答
0

http://php.net/manual/en/function.array-intersect-key.phphttp://php.net/manual/en/function.ksort.php

ksort(array_intersect_key($target, $reference));

于 2013-08-01T20:39:46.900 回答