ホームページ >バックエンド開発 >PHPチュートリアル >PHPでsort関数を使用して配列をソートする方法

PHPでsort関数を使用して配列をソートする方法

WBOY
WBOYオリジナル
2023-06-26 12:47:211640ブラウズ

PHP には、配列のソートに役立つ sort 関数が用意されています。この関数は、通常の配列、連想配列、および多次元配列のソートをサポートします。この記事では、sort 関数を使用して配列を並べ替える方法を説明します。

sort 関数の基本的な使い方

sort 関数は配列をソートすると、元の配列の順序を自動的に変更します。ソート関数の構文は次のとおりです:

sort(array &$array, int $sort_flags = SORT_REGULAR): bool

このうち、$array はソートする必要がある配列です。$sort_flags はオプションのパラメータで、SORT_NUMERIC (ソート済み) などのソート規則を指定するために使用されます。数値による)、SORT_STRING (文字による並べ替え)、順次並べ替え)、および SORT_FLAG_CASE (大文字と小文字を区別しない)。デフォルトでは、sort 関数はデータ型に関係なく文字列をアルファベット順に並べ替えます。

例 1: 通常の配列の並べ替え

まず、通常の配列に対する sort 関数の並べ替え操作を示すために、通常の配列を作成する必要があります。以下は例です:

$cars = array("Volvo", "BMW", "Toyota");
sort($cars);
print_r($cars);

上記のコードは、$cars 配列 (「Volvo」、「BMW」、「Toyota」の 3 つの要素を含む) をソートし、ソートされた結果を (アルファベット順に) 出力します。 。

出力結果は次のとおりです:

Array
(
    [0] => BMW
    [1] => Toyota
    [2] => Volvo
)

例 2: 連想配列の並べ替え

sort 関数を使用して連想配列を並べ替えることもできます。以下は例です:

$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
asort($age);
print_r($age);

上記のコードは $age 配列 (つまり、3 つのキーと値のペアが含まれており、各キーと値のペアは key => value の形式です) を並べ替えます。ソート結果を出力します(値順に並べます)。 asort 関数を使用して配列を並べ替えると、連想配列が得られることに注意してください。つまり、キーと値のペアは並べ替えられず、値のサイズに従って配置されます。

出力結果は次のとおりです。

Array
(
    [Peter] => 35
    [Ben] => 37
    [Joe] => 43
)

例 3: 多次元配列の並べ替え

sort 関数は、多次元配列の並べ替えにも使用できます。以下は例です:

$age = array(
    array("name"=>"Peter", "age"=>35),
    array("name"=>"Ben", "age"=>37),
    array("name"=>"Joe", "age"=>43)
);
 
function compare_age($a, $b)
{
    return $a['age'] - $b['age'];
}
 
usort($age, 'compare_age');
print_r($age);

上記のコードは、$age 配列 (つまり、3 つのサブ配列が含まれ、各サブ配列には 2 つのキーと値のペアが含まれます) をソートし、ソートされた結果を出力します。 (最小の年齢から最小の年齢まで) 大きな配列)。上記のコードでは、compare_age 関数をカスタマイズして 2 つのサブ配列の年齢を比較し、2 つのサブ配列の相対的な順序を示す値を返します。最後に、usort 関数を使用して $age 配列を並べ替えます。並べ替えルールは、カスタムの Compare_age 関数を呼び出すことです。

出力結果は次のとおりです:

Array
(
    [0] => Array
        (
            [name] => Peter
            [age] => 35
        )
 
    [1] => Array
        (
            [name] => Ben
            [age] => 37
        )
 
    [2] => Array
        (
            [name] => Joe
            [age] => 43
        )
)

要約すると、sort 関数を使用して配列を並べ替えるのは非常に簡単です。並べ替える必要がある配列を渡して、並べ替えるだけです。対応するルールに従って。通常の配列、連想配列、多次元配列のいずれであっても、sort 関数がその仕事を行うことができます。

以上がPHPでsort関数を使用して配列をソートする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。