PHP - BASIC - 10. PHPの配列を扱う関数 - 6. sort関数
sort
関数は配列をソートする関数です。ソートとは並び替えという意味で、配列の要素が数値であれば小さいものから順に並び替えたり、配列の要素が文字列であれば辞書順で並び替えたりすることができます。ここでは次のプログラム( arr5.php
)を作成してみましょう。
<?php
$array = ["Betty", "Carol", "Andy"];
sort($array);
print_r($array);
sort
関数は引数にソートの対象とする配列を指定します。上記の場合は引数に $array
変数を指定しているので $array
変数に代入されている ["Betty", "Carol", "Andy"]
配列の要素が辞書順にソートされます。その結果 $array
配列の中身は ["Andy", "Betty", "Carol"]
の順に置き換わります。ここでは sort
関数は並び替えた配列を戻り値で返さない点にも注意しましょう。 sort
関数は引数で受け取った配列変数そのものをソートします。 sort
関数の戻り値はソート結果を返却します。ソートに成功した場合は true
、 失敗した場合は false
を返却です。
sort
関数は引数に整数値や文字列など配列でないデータを受け取った場合、戻り値にfalse
を返します、この場合、標準でWarningメッセージも出力されます。
それでは作成したプログラムを実行してみましょう。ターミナルから次のように実行します。
$ php arr5.php
Array
(
[0] => Andy
[1] => Betty
[2] => Carol
)
実行結果から $array
変数の要素が辞書順(昇順)でソートされているのがわかります。また並び順を昇順ではなく降順で行うには rsort
関数を使います。さきほどのプログラム( arr5.php
)を修正してみましょう。
<?php
$array = ["Betty", "Carol", "Andy"];
rsort($array);
print_r($array);
それでは作成したプログラムを実行してみましょう。ターミナルから次のように実行します。
$ php arr5.php
Array
(
[0] => Carol
[1] => Betty
[2] => Andy
)
実行結果から $array
変数の要素が辞書順(降順)でソートされているのがわかります。
まとめ
sort
— 配列をソートする- 引数
- ソートの対象となる配列
- 戻り値
- 並び替えに成功した場合
true
失敗した場合false
- 並び替えに成功した場合