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


PHP - reorder array by defined key to top

我正在尝试对数组进行重新排序。喜欢

$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',
'...'=>'...', 
'..'=>'...'
);

更新问题后。您可以翻转数组,然后使用合并。

$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);