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アイテムを最後に配置します。

2番目のオプションは、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 に答える