array_reverse関数の使い方

array_reverse関数は第一引数に配列、第二引数に真偽型のpreserve_keysを指定します。返り値は指定した配列の要素を逆順にした配列です。

array_reserve(配列, preserve_keys);

第二引数のpreserve_keysは以下が指定できます。
true:0から始まる添字のキーと文字列のキーは維持
false:0から始まる添字のキーは振り直し、文字列のキーは維持(初期値)

連想配列を逆順にしてvar_dumpします。

<?php
$list = array(
  'トマト' => 100,
  'キャベツ' => 120,
  'ピーマン' => 80,
  'レタス' => 90
);

var_dump(array_reverse($list));
?>

実行結果は以下になります。キーは全て文字列のため維持されています。

array(4) {
 ["レタス"]=> int(90)
 ["ピーマン"]=> int(80)
 ["キャベツ"]=> int(120)
 ["トマト"]=> int(100)
}

次に配列を逆順にしてvar_dumpします。

<?php
$list = array('トマト','キャベツ','ピーマン','レタス');

var_dump(array_reverse($list));
?>

実行結果は以下になります。array_reverseの第二引数を省略しているため初期値のfalseが適用され、添字の数値キーが振り直されています。

array(4) {
 [0]=> string(9) "レタス"
 [1]=> string(12) "ピーマン"
 [2]=> string(12) "キャベツ"
 [3]=> string(9) "トマト"
}

array_reverseの第二引数にtrueを指定します。

<?php
$list = array('トマト','キャベツ','ピーマン','レタス');

var_dump(array_reverse($list, true));
?>

今度は添字の数値キーが維持されているのがわかります。

array(4) {
 [3]=> string(9) "レタス"
 [2]=> string(12) "ピーマン"
 [1]=> string(12) "キャベツ"
 [0]=> string(9) "トマト"
}
タイトルとURLをコピーしました