PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのarsort()関数の使い方:配列を降順ソートしてキーの関連性を保持する方法

arsort()関数とは

arsort()関数は、配列を降順(逆順)にソートするPHPの組み込み関数です。最大の特徴は、ソート後もキーと値の関連性(インデックスの関連付け)が維持される点にあります。連想配列を値の大きい順に並べ替えたい場合に特に便利です。

構文

arsort(arr, compare)

パラメータ

  • arr − ソート対象の配列を指定します。

  • compare − 配列要素の比較方法を指定します(省略可能)。指定できる値は以下のとおりです。

    • SORT_STRING − 要素を文字列として比較します

    • SORT_REGULAR − 型を変換せずに通常の方法で要素を比較します

    • SORT_NUMERIC − 要素を数値として比較します

    • SORT_LOCALE_STRING − 現在のロケールに基づいて、要素を文字列として比較します

    • SORT_NATURAL − 自然順序(人間が読みやすい順序)で文字列として要素を比較します

戻り値

arsort()関数は、ソートが成功した場合にTRUE、失敗した場合にFALSEを返します。

使用例

以下は、arsort()関数を使用して連想配列を降順にソートするサンプルコードです。

<?php
$rank = array("Australia"=>2,"India"=>5,"Bangladesh"=>9);
arsort($rank);

foreach($rank as $akey=>$avalue) {
    echo "Key=" . $akey . " : Value=" . $avalue;
    echo "<br>";
}
?>

出力結果

上記コードの実行結果は以下のとおりです。

Key=Bangladesh : Value=9
Key=India : Value=5
Key=Australia : Value=2

このように、値が大きい順(降順)にソートされ、各国名のキーと値の関連性が保たれたまま出力されていることがわかります。キーと値のペアを維持したまま並べ替えたい場合は、sort()関数ではなくarsort()関数を使用するのがポイントです。

  1. PHPのksort()関数とは?連想配列をキーで昇順ソートする方法を解説

    PHPのksort()関数は、連想配列をキー(添字)に基づいて昇順に並べ替えるための関数です。ソートに成功した場合はTRUE、失敗した場合はFALSEを返します。キーと値の対応関係は維持されるため、連想配列の並べ替えに最適です。構文ksort(arr, flag)パラメータarr:並べ替えの対象となる配列を指定します。この配列は参照渡しで処理され、直接書き換えられます。flag:ソートの挙動を変更するためのオプションフラグです。省略可能で、以下の値を指定できます。0 = SORT_REGULAR:デフォルト値。型の変換を行わず、通常の方法で要素を比較します。1 = SORT_NUMERIC:要

  2. PHPのasort()関数の使い方をわかりやすく解説

    PHPのasort()関数は、連想配列を値に基づいて昇順にソートし、キーと値の関連性(インデックスの対応関係)を保持したまま並べ替えを行う関数です。通常のsort()関数と異なり、ソート後も元のキーがそのまま維持されるため、連想配列の取り扱いに非常に便利です。構文asort(arr, compare)パラメータarr − ソート対象となる配列を指定します。compare − 配列要素の比較方法を指定します(省略可能)。指定できる値は以下の通りです。SORT_STRING − 要素を文字列として比較しますSORT_REGULAR − 型を変換せずに要素を通常の方法で比較しますSORT_NUMER