Php/docs/arrayobject.uksort

提供:Dev Guides
< Php
移動先:案内検索

ArrayObject::uksort

(PHP 5 >= 5.2.0, PHP 7)

ArrayObject::uksortユーザー定義の比較関数を使って、キーでエントリをソートする


説明

public ArrayObject::uksort ( callable $cmp_function ) : void

この関数は、ユーザー定義の比較関数を使ってキーでエントリをソートします。 キーとそれに対応する値の関連は保持されたままとなります。


パラメータ

cmp_function

比較コールバック関数。

関数 cmp_function は二つのパラメータを受け取ります。ここにはエントリのペアが渡されます。 比較関数の返り値は、最初の引数が二番目の引数より小さい場合に負の数、 等しい場合にゼロ、大きい場合に正の数となります。


返り値

値を返しません。


例1 ArrayObject::uksort() の例

<?phpfunction cmp($a, $b) {    $a = preg_replace('@^(a|an|the) @', , $a);    $b = preg_replace('@^(a|an|the) @', , $b);    return strcasecmp($a, $b);}$array = array("John" => 1, "the Earth" => 2, "an apple" => 3, "a banana" => 4);$arrayObject = new ArrayObject($array);$arrayObject->uksort('cmp');foreach ($arrayObject as $key => $value) {    echo "$key: $value\n";}?>

上の例の出力は以下となります。


an apple: 3
a banana: 4
the Earth: 2
John: 1

参考