将元素添加到PHP关联数组

时间:2010-05-05 10:38:29

标签: php arrays associative-array

1=>america,2=>India,3=>england

上面是我的关联数组。如何将3 =>英格兰带到数组的前面?

9 个答案:

答案 0 :(得分:4)

使用array_poparray_unshift

$lastItem = array_pop($array);
array_unshift($array, $lastItem);

答案 1 :(得分:2)

您可以使用array_unshift功能。

$array = array('americ', 'India');
array_unshift($array, 'englans');
print_r($array);

<强>输出:

Array
(
    [0] => englans
    [1] => americ
    [2] => India
)

答案 2 :(得分:2)

如果要保留数组键,请使用array_slice(,,,TRUE)

$array = array_slice( $array, -1, 1, TRUE ) + array_slice( $array, 0, -1, TRUE );

答案 3 :(得分:1)

$temp = myArray[3];
$myArray[3] = $myArray[2];
$myArray[2] = $myArray[1];
$myArray[1] = $temp;

答案 4 :(得分:1)

您可以使用array_reverse找到文档,您可以在http://php.net/manual/en/function.array-reverse.php

找到这些文档

答案 5 :(得分:1)

krsort($myArray, SORT_NUMERIC)

答案 6 :(得分:1)

您可以使用array_poparray_unshift

$last = array_pop($array);
array_unshift($array, $last);

答案 7 :(得分:1)

我认为他希望将元素3 =&gt;英格兰放在前面,这样他就可以将它与foreach一起使用,阵列的其余部分必须保持在同一个地方

比他想要这个结果

$array[1] = 'america';
$array[2] = 'India';
$array[3] = 'england';
$new_array[3] = $array[3];
$new_array[1] = $array[1];
$new_array[2] = $array[2];
print_r($new_array);

可能有一个功能,但我找不到所以我做了一个

function placeLastToFirst($array){
    $newArray = array();
    $newArray[count($array)] = $array[count($array)];
    for($i = 1;$i < count($array);$i++){

        $newArray[$i] = $array[$i ];
    }
    return $newArray;
}

你必须要注意,因为只有当数组以1开头时(普通数组以0开头),此函数才有效。在这种情况下,您可以使用这个

function placeLastToFirst($array){
    $newArray = array();
    $newArray[count($array)-1] = $array[count($array)-1];
    for($i = 0;$i < count($array)-1;$i++){

        $newArray[$i] = $array[$i];
    }
    return $newArray;
}

答案 8 :(得分:0)

$contractTypes = array('' => 'All') + $contractTypes;