保留PHP数组foreach循环中元素的顺序

时间:2014-06-03 10:07:11

标签: php arrays foreach

我有一个数组

$array = array(10 => "a", 11 => "b", 12 => "c");

我希望循环使用foreach,以便保留订单。

但是,我的foreach循环以错误的顺序迭代元素

foreach($array as $k => $v)
print($k." ".$v." /");
// 12 c / 11 b / 10 a /

我该怎么办?

1 个答案:

答案 0 :(得分:0)

使用 asort

尝试此操作
$array =array(10 =>'a', 11=>'b', 12=>'c');
arsort($array);
foreach ($array as $key => $value) {
    echo $key." ".$value." /";
}

输出12 c /11 b /10 a /

您可以使用随机播放

$array =array(10 =>'a', 11=>'b', 12=>'c');
shuffle($array);
foreach ($array as $key => $value) {
    echo $key." ".$value." /";
}

但是not maintains the key association

输出0 b /1 a /2 c /