内部配列の値に基づいて多次元 PHP 配列を並べ替えるにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-03 03:40:31
オリジナル
604 人が閲覧しました

How to Sort Multi-Dimensional PHP Arrays Based on Inner Array Values?

内部配列値に基づいた多次元 PHP 配列の並べ替え

多次元配列の並べ替えは、特に並べ替えパラメーターがネストされた配列内に埋め込まれます。配列の配列を「name」キーでソートするなど、内部配列の値に基づいて PHP ハッシュテーブルをソートするには、カスタム ソート関数が必要です。

カスタム ソート関数の作成

ネストされた値に基づいて並べ替える 1 つの方法は、内部配列から目的の値を抽出するカスタム 並べ替え関数を作成することです。

<code class="php">function cmp($a, $b) {
    return $b['name'] - $a['name'];
}</code>
ログイン後にコピー

この例では、cmp 関数は以下を比較します。内部配列の「name」キー。降順での並べ替えは、値を加算するのではなく、値を減算することによって実現されます。

並べ替え関数の使用

カスタム 並べ替え関数を利用するには、配列に usort を適用します。

<code class="php">usort($mydata, "cmp");</code>
ログイン後にコピー

これは、内部配列の 'name' キーに基づいて $mydata 配列を降順に並べ替えます。

代替メソッド

特定の使用例に応じて、多次元配列をソートするための別のオプションは、array_sort 関数です。

<code class="php">function array_sort($array, $on, $order=SORT_ASC){

   // ... (function definition) ...

   // ... (sorting logic) ...

}</code>
ログイン後にコピー

array_sort 関数は、次のように使用して、「name」キーによって昇順にソートできます。

<code class="php">$list = array(
   array( 'type' => 'suite', 'name' => 'A-Name'),
   array( 'type' => 'suite', 'name' => 'C-Name'),
   array( 'type' => 'suite', 'name' => 'B-Name')
);

$list = array_sort($list, 'name', SORT_ASC);</code>
ログイン後にコピー

この代替方法は、内部配列の値に基づいて多次元配列を並べ替えるための包括的なソリューションを提供します。

以上が内部配列の値に基づいて多次元 PHP 配列を並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート