-1

这是一个数组:

$array = (0 => "pear", 1 => "apple", 2 => "orange", 3 => "kiwi");

将数组重新排序为:

$array = (0 => "pear", 1 => "kiwi", 2 => "orange", 3 => "apple");

编辑:

请注意,我不是在寻找字母排序。我正在寻找切换数组中两个项目的顺序。我最初的想法是弹出我想要更改的 key=>value 对,然后重新插入它。但我想知道是否有更好的方法。

4

4 回答 4

2

使用此代码切换数组的 2 个值:

$tmp = $array[1];
$array[1] = $array[3];
$array[3] = $tmp;
unset($tmp); // you may delete the variable if you no longer need it
于 2013-05-26T00:26:17.580 回答
1

我认为您可以使用asort按字母顺序对数组进行排序

一般示例

$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
asort($fruits);
foreach ($fruits as $key => $val) {
    echo "$key = $val\n";
}

这将输出

c = apple
b = banana
d = lemon
a = orange
于 2013-05-25T23:46:01.493 回答
0

我会简单地使用:

$list = array('apple', 'pear', 'kiwi');
sort($list);
var_dump($list);

这对于非关联数组来说是最好的。

于 2013-05-25T23:55:54.817 回答
0

用于asort($array)对数组进行排序。

于 2013-05-25T23:45:56.393 回答