「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > usort とカスタム比較関数を使用して、特定のキーで多次元配列をソートする方法

usort とカスタム比較関数を使用して、特定のキーで多次元配列をソートする方法

2024 年 11 月 8 日に公開
ブラウズ:717

How to Sort Multidimensional Arrays by a Specific Key Using usort and Custom Comparison Function?

キーによる多次元配列の並べ替え

多次元配列を扱うときの一般的なタスクは、特定のキーに従って配列を並べ替える必要があることです。たとえば、次の配列を考えてみましょう:

Array (
[0] => Array
    (
        [iid] => 1
        [invitee] => 174
        [nid] => 324343
        [showtime] => 2010-05-09 15:15:00
        [location] => 13
        [status] => 1
        [created] => 2010-05-09 15:05:00
        [updated] => 2010-05-09 16:24:00
    )

[1] => Array
    (
        [iid] => 1
        [invitee] => 220
        [nid] => 21232
        [showtime] => 2010-05-09 15:15:00
        [location] => 12
        [status] => 0
        [created] => 2010-05-10 18:11:00
        [updated] => 2010-05-10 18:11:00
    ))

この配列を [status] キーで並べ替えるには、usort 関数とカスタム比較関数を使用できます:

// Define a comparison function
function cmp($a, $b) {
    if ($a['status'] == $b['status']) {
        return 0;
    }
    return ($a['status'] 

cmp 関数を定義することで、並べ替え時に要素を比較する方法を指定します。この場合、2 つの要素の [status] キーを比較し、$a['status'] が $b['status'] より小さい場合は -1、等しい場合は 0、そうでない場合は 1 を返します。

usort 関数は、比較関数の出力に基づいて配列要素を昇順に並べます。これにより、多次元配列を目的のキー (この場合は [status].

) で並べ替えることができます。
リリースステートメント この記事は次の場所に転載されています: 1729422320 権利侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3