【PHP8.x】ksortメソッドの使い方

ksortメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

『ksortメソッドは、ArrayObjectインスタンスが保持する要素を、そのキーに基づいて昇順にソートするメソッドです。このメソッドはオブジェクト自身の内容を直接変更し、ソート後もキーと値の関連性は維持されます。つまり、各キーはソート前と同じ値に対応したまま、キーの順序だけが並べ替えられます。このため、連想配列のように管理されているデータを、キーの名前順などで整理したい場合に非常に有効です。オプションの引数としてフラグを渡すことで、ソートの挙動を細かく制御できます。例えば、キーを数値として比較したい場合は SORT_NUMERIC を、'img2.png'と'img10.png'のように、文字列に含まれる数値を考慮した自然な順序で並べ替えたい場合は SORT_NATURAL を指定します。引数を省略した場合、SORT_REGULAR が適用され、通常の比較ルールに従ってソートが実行されます。PHP 8.0.0以降、このメソッドの戻り値は常に true となります。

構文(syntax)

1<?php
2
3// ArrayObjectのインスタンスを作成します
4$array = new ArrayObject([
5    'c' => 'Lemon',
6    'a' => 'Orange',
7    'b' => 'Apple'
8]);
9
10// ksort()メソッドで、キーに基づいて昇順にソートします
11$array->ksort();
12
13// ソート後のArrayObjectの内容を出力します
14print_r($array);
15
16?>

引数(parameters)

int $flags = SORT_REGULAR

  • int $flags = SORT_REGULAR: ソート順序を指定する整数。デフォルトは SORT_REGULAR

戻り値(return)

bool

ArrayObject の要素をキーの昇順に並べ替えた結果を返します。並べ替えに成功した場合は true、失敗した場合は false を返します。