PHP - 按定义的键将数组重新排序到顶部

时间:2013-10-17 01:23:21

标签: php arrays

我正在尝试重新排序数组。像

$array_to_reorder = array('home' => 'canada', 'school'=>'National School', 'phone' => '00808080', 'name'=>'john doe', '...'=>'...', '..'=>'...');
$shorting = array('name', 'phone', 'home');

我想将$array_to_reorder命名为$shorting中定义的键,并将定义的数组保留在数组的顶部,以及其他未在底部定义的数组。

我想要这个输出:

$array_to_reorder = array(
'name'=>'john doe', 
'phone' => '00808080', 
'home' => 'canada', 
'school'=>'National School',
'...'=>'...', 
'..'=>'...'
);

1 个答案:

答案 0 :(得分:3)

更新问题后。您可以使用flip数组merge

$array_to_reorder = array('home' => 'canada', 'school' => 'National School', 'phone' => '00808080', 'name' => 'john doe', '...' => '...', '..' => '...');
$shorting = array('name', 'phone', 'home');
$new_shorting = array_flip($shorting);
$result = array_merge($new_shorting, $array_to_reorder);