3

如何在php中将数组项放在末尾?
我想将一些数组项放在最后一个位置,当我循环并将 $arr 输出到 html 时,这将始终将“其他”项保留在最后。最好和最简单的方法是什么?

<?php
$arr=array(
    'a'=>'hello',
    'game'=>'boy',
    'other'=>'good',
    'name'=>'jimmy',
    //...
);


// how to resort $arr to put other item to then end of $arr
$arr=array(
    'a'=>'hello',
    'game'=>'boy',
    'name'=>'jimmy',
    //...
    'other'=>'good'
);
?>
4

3 回答 3

2

在您给出的示例中,ksort($arr)将按字母顺序对其进行排序并将other项目放在末尾。

第二种选择是other使用从数组中删除项目array_slice,然后使用array_merge

于 2013-07-15T03:52:59.370 回答
1

假设您不是简单地要求根据键的字母属性对数组进行排序,给定您的数组:

$arr=array(
    'a'=>'hello',
    'game'=>'boy',
    'other'=>'good',
    'name'=>'jimmy',
);

您必须先取出旧密钥,同时保存其价值:

$old = $arr['other'];
unset($arr['other']);

然后,将其附加到数组中,如下所示:

$arr += array('other' => $old);
于 2013-07-15T03:53:05.610 回答
1

首先存储您需要的所有元素。

喜欢

$arr=array( 'a'=>'hello', 'game'=>'boy', 'name'=>'jimmy');

之后添加

$arr['other']='good';

现在其他元素总是在最后......

于 2013-07-15T03:57:33.713 回答