PHPでの2次元配列ソート、PHP組み込み関数uasort()を使うことができます
例1:
ユーザー定義の比較関数を使用して配列内の値を並べ替え、インデックスの関連付けを維持します
コールバック関数は次のとおりです: コールバック関数の戻り値が負の数または false の場合、コールバック関数の最初のパラメータが最初に来て、2 番目のパラメータが最後に配置されることを意味します
リーリー次のように使用します:
以下は、参照およびインタビューで使用するための 2 次元配列のソート方法です。
リーリー例 2:
1 次元配列のソートは、asort、ksort、その他のメソッドを使用して行うことができ、比較的簡単です。 2次元配列のソートを実装するにはどうすればよいですか?これは、array_multisort と usort を使用して実現できます
たとえば、次のような配列:
コードは次のとおりです:
小さいものから大きいものまで年齢別に分類できればと思います。著者は2つの方法を整理して皆さんに共有しました。
1. array_multisort を使用します
この方法を使用すると、年齢を抽出して一次元配列に格納し、年齢ごとに昇順に並べる必要があります。具体的なコードは次のとおりです:
コードは次のとおりです:
リーリー実行後、$users はソートされた配列になり、印刷して確認できます。最初に年齢で昇順に並べ替え、次に名前で昇順で並べ替える必要がある場合、メソッドは上記と同じです。つまり、追加の名前配列を抽出します。最終的な並べ替えメソッドは次のように呼び出されます。
リーリー
2. usort を使用します
リーリー
================================================ === ====================
ちなみに、PHPのソート機能をいくつか紹介します
sort は配列をソートします 一般に 1 次元のインデックス配列に適しており、インデックスは維持されません
rsortは配列を逆順にソートします 使い方はsortと同じです
asort は配列をソートし、インデックス関係を維持して値をソートします。これは一般に 1 次元配列に適しており、インデックス関係を維持します。
arsort は配列を逆順にソートし、インデックスの関係を維持します使用方法は asort と一致しています
ksortは配列をキー名でソートします
krsort は配列をキー名によって逆順にソートします