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

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

作成日: 更新日:

基本的な使い方

『uksortメソッドは、ユーザーが定義した比較関数を用いて、ArrayIteratorオブジェクトが内部で保持する配列を、キーに基づいてソートするメソッドです。このメソッドは、キーと値の間の関連性を維持したままソートを実行します。通常のキーによる昇順ソートを行うksort関数とは異なり、uksortでは独自の比較ロジックを自由に定義できる点が特徴です。引数には、比較ロジックを実装したコールバック関数を指定します。このコールバック関数は2つのキーを引数として受け取り、それらを比較した結果を整数値で返します。具体的には、最初のキーが2番目のキーより小さいと見なす場合は負の数を、等しい場合は0を、大きい場合は正の数を返すように記述する必要があります。この返り値に基づいて、配列の要素が並べ替えられます。ソートが成功した場合、このメソッドはtrueを返します。

構文(syntax)

1<?php
2
3$iterator = new ArrayIterator([
4    'delta' => 4,
5    'alpha' => 1,
6    'charlie' => 3,
7    'bravo' => 2,
8]);
9
10$iterator->uksort(fn($key1, $key2) => strcmp($key1, $key2));
11
12?>

引数(parameters)

callable $callback

  • callable $callback: 配列のキーをソートするために使用されるコールバック関数

戻り値(return)

bool

uksortメソッドは、配列のキーをコールバック関数でソートし、成功した場合はtrue、失敗した場合はfalseを返します。

【PHP8.x】uksortメソッドの使い方 | いっしー@Webエンジニア