假设您有一个关联数组
$hash['Fruit'] = 'Apple';
$hash['Name'] = 'Jeff';
$hash['Car'] = 'Ford';
并且您无法更改创建这些变量的顺序。所以Car总是在Name等之后添加到数组中。将Car添加/移动到关联数组的开头而不是结尾(默认)的最漂亮的方法是什么?
答案 0 :(得分:8)
$hash = array('Car' => 'Ford') + $hash;
答案 1 :(得分:2)
但是你为什么要关心数组的内部命令?
答案 2 :(得分:1)
array_reverse($hash, true);
这不是一个非常直接的解决方案,而是一个:
$value = end($hash);
$hash = array(key($hash) => $value) + $hash;
答案 3 :(得分:0)
另一个技巧是 -
$new_items = array('Car' => 'Ford');
$hash = array_merge($new_items, $hash);
您也可以重新排列新的数组键。假设汽车首先是另一个领域(比如说Id)那么阵列仍然是......
$new_items = array('Car' => 'Ford','Id'=>'New Id');
$hash = array_merge($new_items, $hash);
数组将变为
$hash['Car'] = 'Ford';
$hash['Id'] = 'New Id';
$hash['Fruit'] = 'Apple';
$hash['Name'] = 'Jeff';