是否有PHP函数移动数组键/值对并使其成为数组中的第一个元素。
基本上,我想转换
Array
(
[a] => rose
[b] => tulip
[c] => dahlia
[d] => peony
[e] => magnolia
)
到
Array
(
[c] => dahlia
[a] => rose
[b] => tulip
[d] => peony
[e] => magnolia
)
为了澄清,目的是选择一个特定的键/值对并将其移动成第一个索引,同时保持订单的其余部分完整。
所以在这种情况下,我正在寻找像
这样的东西$old_array = Array
(
[a] => rose
[b] => tulip
[c] => dahlia
[d] => peony
[e] => magnolia
);
$new_array = some_func($old_array, 'c');
在$ new_array中,' c'应该是列表中的第一个。
有关' some_func()'?
的代码的任何想法答案 0 :(得分:2)
如果您只想将一个元素放在第一位,那么您可以这样做:
function some_func($array, $key) {
$tmp = array($key => $array[$key]);
unset($array[$key]);
return $tmp + $array;
}
答案 1 :(得分:1)
这可能对您有所帮助:
function myfun($ar,$key){
if (array_key_exists($key,$ar)) {
$arr_tmp = array($key => $ar[$key]);
unset($ar[$key]);
return $arr_tmp + $ar;
}
}
答案 2 :(得分:1)
function some_func($arr, $key) {
$val = $arr[$key];
unset($arr[$key]);
return array_merge(array($key => $val), $arr);
}