構文:
bool ksort(array&$ array [、int $ sort_flags = SORT_REGULAR])
この関数は2つの引数を取ることができます。最初の引数は必須であり、キーに基づいて並べ替えられる配列を取ります。 2番目の引数はオプションであり、ソートの動作を変更するために使用できます。オプションの引数には、次の値のいずれかを使用できます。
SORT_REGULARまたは0:これはデフォルト値であり、要素を通常どおりに並べ替えます。
SORT_NUMERICまたは1:数値キーに基づいて配列をソートするために使用されます。
SORT_STRINGまたは2:文字列キーに基づいて配列をソートするために使用されます。
SORT_LOCALE_STRINGまたは3:現在のロケールの文字列キーに基づいて配列を並べ替えるために使用されます。
SORT_NATURALまたは4:自然順序で文字列キーに基づいて配列を並べ替えるために使用されます。
SORT_FLAG_CASEまたは5:大文字と小文字を区別して文字列キーに基づいて配列を並べ替えるために使用されます。
例1:文字列キーに基づいて配列を並べ替える(デフォルト)
次の例は、オプションの引数なしでksort()を使用する方法を示しています。
まず、次のスクリプトを使用してPHPファイルを作成します。スクリプトでは、4つの要素からなる1次元の連想配列が宣言されています。ここでは、ksort()関数を使用して、キー値に基づいて配列を昇順で並べ替えています。 ksort()関数でオプションの引数が使用されていない場合、配列は通常どおりソートされます。次に、 foreach ループは、ソートされた配列をキーと値とともに出力するために使用されます。
//連想配列を宣言します
$ clients = 配列 ((「c4089」=>「MehrabHossain」、 'c1289'=>「MunirChowdhury」、 「c2390」=>「ミーナ・ラーマン」、 「c1906」=>「ロクサナカマル」)。;
//デフォルトのksort()を適用します
ksort (($ clients)。;
捨てた '
ソートされた配列値は次のとおりです。
';//並べ替え後に配列値を出力します
foreach (($ clients なので $ key => $ value)。 {{
捨てた '$ key=$ value
';
}
?>
出力:
サーバーからスクリプトを実行すると、次の出力が表示されます。出力は、配列のキー値がソートされていることを示しています。
例2:数値キーに基づいて配列を並べ替える
次の例は、ksort()関数を使用して1次元の数値配列を並べ替える方法を示しています。
まず、次のスクリプトを使用してPHPファイルを作成します。ここでは、4つの要素の連想配列が宣言されており、配列のキー値は数値です。 1は、テンキー値に基づいて配列をソートするために使用されるスクリプトで、ksort()のオプションの引数値として使用されます。次に、 foreach ループは、ソートされた配列を出力するために使用されます。
//連想配列を宣言します
$ items = 配列 ((89564=>'モニター'、 98765=>'ねずみ'、 34234=>「プリンター」、 18979=>「スキャナー」)。;
//オプションの引数値1を指定してksort()を適用します
ksort (($ items、 1)。;
捨てた '
ソートされた配列値は次のとおりです。
';//並べ替え後に配列値を出力します
foreach (($ items なので $ key => $ value)。 {{
捨てた '$ key=$ value
';
}
?>
出力:
サーバーからスクリプトを実行すると、次の出力が表示されます。出力には、テンキー値に基づいて配列を並べ替えた後の配列キーと値が表示されます。
例3:自然な順序で連想配列を並べ替える
次の例は、キーに基づいて配列を並べ替える方法を示しています。キーは自然な順序で並べ替えられます。これは、配列のキーが文字で始まり、数字で終わる場合、ソートは自然に行われることを意味します。
まず、次のスクリプトを使用してPHPファイルを作成します。ここでは、4つの要素の連想配列が定義されており、キー値には文字と数字の両方が含まれています。 4は、自然ソートのksort()の2番目の引数で使用されます。次に、 foreach ループは、ソートされた配列を出力するために使用されます。
//連想配列を宣言します
$ courses = 配列 ((「CSE408」=>「マルチメディア」、 「MAT201」=>「数学私」、 「CSE204」=>「アルゴリズム」、 「PHY101」=>「物理学I」)。;
//オプションの引数値4を指定してksort()を適用します
ksort (($ courses、 4)。;
捨てた '
ソートされた配列値は次のとおりです。
';//並べ替え後に配列値を出力します
foreach (($ courses なので $ key => $ value)。 {{
捨てた '$ key=$ value
';
}
?>
出力:
サーバーからスクリプトを実行すると、次の出力が表示されます。出力には、配列キーを自然にソートした後の配列キーと値が表示されます。
例4:大文字と小文字を区別して連想配列を並べ替える
次の例は、キーに基づいて連想配列をソートする方法を示しています。キー値は大文字と小文字が区別されます。
まず、次のスクリプトを使用してPHPファイルを作成します。 5つの要素の連想配列がスクリプトで宣言されています。配列のキー値には、小文字と大文字の両方が含まれます。ここでは、大文字と小文字を区別するソートのksort()の2番目の引数値の値として5が使用されています。次、 foreach ループは、ソートされた配列を出力するために使用されます。
//連想配列を宣言します
$ foods = 配列 (('ケーキ'=>'20ドル'、 'コークス'=>'$ 2'、 'バーガー'=>'$ 5'、 'ピザ'=>'$ 10'、 'ドーナツ'=>'$ 2')。;
//オプションの引数値5を指定してksort()を適用します
ksort (($ foods、 5)。;
捨てた '
ソートされた配列値は次のとおりです。
';//並べ替え後に配列値を出力します
foreach (($ foods なので $ key => $ value)。 {{
捨てた '$ key=$ value
';
}
?>
出力:
サーバーからスクリプトを実行すると、次の出力が表示されます。出力には、大文字と小文字を区別して配列キーを並べ替えた後の配列キーと値が表示されます。配列のキー値は次のとおりです。 ケーキ 、 コークス 、 バーガー 、 ピザ 、および ドーナツ 。大文字はASCIIコードに基づく小文字よりも小さいです。大文字と小文字を区別して並べ替えた後のキー値は次のとおりです。 コークス 、 ピザ 、 バーガー 、 ケーキ 、および ドーナツ 。
結論
このチュートリアルでは、ksort()関数を使用してキーに基づいて配列を並べ替えるさまざまな方法について、複数の例を使用して説明しました。キー値は、この関数の2番目の引数値に基づいて並べ替えられます。読者がこのチュートリアルを読んだ後、PHPを使用してキーに基づいて配列をソートできるようになることを願っています。