配列をソートする

 

 

 

PHPで配列をソートする関数のご紹介です。

ソート関数を使えば配列の値をあらゆる順に並び変えることができます。

 

f:id:sinya0228:20201205130650p:plain

 

 

昇順でソート

sort関数を使います。

使い方としては以下のようになります。

 

-例文-

$number = array('3', '2', '1', '4');
sort($number);
var_dump($number);

 

-結果-

array(4) {
[0]=>
string(1) "1"
[1]=>
string(1) "2"
[2]=>
string(1) "3"
[3]=>
string(1) "4"
}

配列の値を数字の順に並べ替えて出力してくれます。

 アルファベットも順に並び変えることも可能です。

 

-例文-

$str = array('a', 'c', 'b', 'd');
sort($str);
var_dump($str);

 

-結果-

array(4) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
[3]=>
string(1) "d"
}

 

 

 

降順でソート

今度は降順でソートをしてみましょう。

数字の大きい順から並び替えすることができます。

 

-例-

$number = array('3', '2', '1', '4');
rsort($number);
var_dump($number);

 

 

-結果-

array(4) {
[0]=>
string(1) "4"
[1]=>
string(1) "3"
[2]=>
string(1) "2"
[3]=>
string(1) "1"
}

 

 

 

 

配列のキーと値の関連を維持してソート

 

連想配列などのキーと値の関連性を維持したままソートをする方法です。

実際のプログラムは以下のようになります。

 

-例-

$str = array('1'=>'a','2'=>'c','3'=>'b','4'=>'d');
asort($str);
var_dump($str);

 

-結果-

array(4) {
[1]=>
string(1) "a"
[3]=>
string(1) "b"
[2]=>
string(1) "c"
[4]=>
string(1) "d"
}

 

 

まとめ

以下がソート機能の特性です。

関数名、並び順、ソートする対象、関連性の順に記載してます。

 

sort   昇順   値    維持しない

sort   昇順   値    維持しない

asort   昇順   値    維持する

ksort   昇順   キー  維持する

rsort   降順   値    維持しない

arsort   降順   値   維持する

krsort   降順   キー  維持する