[PHP] 配列の要素を逆順にして返す方法

PHPで配列を逆順にする方法です。PHPに用意されている「array_reverse()」関数を使うと簡単です。

array_reverse関数

書式は

書式
array_reverse($array , $preserve_keys );

利用方法

シンプルな配列

a,b,c,d,eというシンプルな配列を作成し、関数を使って逆順に表示しています。
数字の添え字は0から始まっています。

<?
$arr = array('a', 'b', 'c', 'd', 'e');
$arr = array_reverse($arr);
?>

[出力結果]

Array
(
    [0] => e
    [1] => d
    [2] => c
    [3] => b
    [4] => a
)

多次元配列

配列の設定と出力

多次元配列の場合のプログラムと出力結果です。
第2引数に何も設定していないので、数字の添え字は0からになります。
多次元の2階層目の並び順は変化しないことに注意が必要です。

<?php
$arr  = array("apple", "banana", array("a", "b"));
print_r($arr);
?>

[出力結果]

Array
(
    [0] => apple
    [1] => banana
    [2] => Array
        (
            [0] => a
            [1] => b
        )
}
数字の添え字を昇順で出力

多次元配列の場合のプログラムと出力結果です。
第2引数に何も設定していないので、数字の添え字は0が最後になります。
多次元の2階層目の並び順は変化しないことに注意が必要です。

<?php
$arr  = array("apple", "banana", array("a", "b"));
$reversed = array_reverse($arr);
print_r($reversed);
?>

[出力結果]

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
        )

    [1] => banana
    [2] => apple
)
数字の添え字を降順で出力
<?php
$arr  = array("apple", "banana", array("a", "b"));
$preserved = array_reverse($arr, true);
print_r($preserved);
?>

[出力結果]

Array
(
    [2] => Array
        (
            [0] => a
            [1] => b
        )
    [1] => banana
    [0] => apple
)
参考にさせて頂いたサイト



Author: webmaster