[PHP] sort関数を使ってサンプルを作ってみた

アイキャッチ画像


記事内に商品のプロモーションを含む場合があります。

Nプログラマ(@Nprog128)です。

ソート関数を調べてみると色々あったので、まずはsort関数を使って小さなサンプルを作ってみました。

sort関数: 配列の要素を昇順にソート

sort関数をオプションなしにそのまま使用すると、要素の並びは昇順でソートされ、配列のキーは振り直されます。

ソートの対象ソートの順序ソート後のキーの状態
配列の値(value)昇順振り直される

コード

サンプルコードになります。

配列に入った数字をsort関数を使って並び替える、というものです。

サンプル コードを開く
サンプル
1$numbers = [10, 2, 4, 1, 3];
2
3// ソート前を表示
4print_r($numbers);
5$result = sort($numbers);
6
7// ソート後を表示
8print_r($numbers);

実行結果

実行結果 コードを開く
実行結果
 1// ソート前
 2Array
 3 (
 4     [0] => 10
 5     [1] => 2
 6     [2] => 4
 7     [3] => 1
 8     [4] => 3
 9 )
10// ソート後
11 Array
12 (
13     [0] => 1
14     [1] => 2
15     [2] => 3
16     [3] => 4
17     [4] => 10
18 )

実行結果を見てみると、昇順でソートされて、キーが振り直されていることが確認できました。

表にするとこんな感じになります。

項目ソート前のキーと値ソート後のキーと値
0番目[0] => 10[0] => 1
1番目[1] => 2[1] => 2
2番目[2] => 4[2] => 3
3番目[3] => 1[3] => 4
4番目[4] => 3[4] => 10

おわりに

ソートはDBからデータ取得する時に行うことが多いと思いますが、アプリ側で対応する場合もあるのでメモしておきました。

sort関数の第2引数のパラメータでソートの並びを指定することができそうなので、また試してみたいと思います。

あと、ソートするデータが膨大になると処理が重くなるので注意が必要です。

それでは、このへんで。
バイナリー!

参考

\ ちょっとお買い物 /


関連した記事