キーによる多次元配列の並べ替え: 総合ガイド
多次元配列の要素を特定の順序で配置することは、一般的な要件となる場合がありますプログラミングで。特定のキーで並べ替えると、データを整理して取得する効率的な方法が提供されます。
招待状を含む次の多次元配列を考えてみましょう:
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 ))
この配列を「ステータス」キーで並べ替えるには、次のようにします。 usort() 関数とカスタム比較関数を使用できます。
カスタム比較関数
比較関数は、キーを比較することによって要素の順序を決定します。 「ステータス」キーに基づいて比較する関数は次のとおりです。
function cmp($a, $b) { if ($a['status'] == $b['status']) { return 0; } return ($a['status'] < $b['status']) ? -1 : 1; }
この関数は、$a が $b の前に来る必要がある場合は -1 を返し、$a が $b の後に来る必要がある場合は 1 を返し、それらの場合は 0 を返します。
配列の並べ替え
usort() を使用して配列を並べ替えることができます。
usort($array, "cmp");
これにより、配列が次の基準で並べ替えられます。 「ステータス」キーを昇順に並べます。順序を逆にしたい場合は、rsort():
rsort($array, "cmp");
提供された比較関数と並べ替え関数を利用することで、任意のキーで多次元配列を簡単に並べ替えることができます。
以上が多次元配列をキーでソートする方法: 段階的な解決策?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。