検索
ホームページバックエンド開発PHPの問題PHP で array_multisort 関数を使用して、指定されたフィールドで配列を並べ替える方法

PHP には、配列の並べ替えに使用できる関数がいくつかあります。しかし、複数のフィールドを持つ配列の場合、指定したフィールドで並べ替えるにはどうすればよいでしょうか? array_multisort 関数を使用して、指定したフィールドで並べ替えることができます。

PHP で array_multisort 関数を使用して、指定されたフィールドで配列を並べ替える方法

PHP には、配列の並べ替えに使用できる関数がいくつかあります。

  • sort() - 配列を昇順に並べ替えます

  • rsort() - 配列を降順に並べ替えます

  • asort() - 連想配列の値に基づいて配列を昇順に並べ替えます

  • ksort() - に基づいて配列を昇順に並べ替えます連想配列のキー

  • arsort() - 連想配列の値に基づいて配列を降順に並べ替えます

  • krsort() - 連想配列のキーに基づいて配列を降順に並べ替えます

例:

        $arr=['green','car','apple','book'];
        sort($arr);
        var_dump($arr);

並べ替え結果を取得できます:

array (size=4)
  0 => string 'apple' (length=5)
  1 => string 'book' (length=4)
  2 => string 'car' (length=3)
  3 => string 'green' (length=5)

しかし、複数のフィールドを持つ配列の場合、指定されたフィールドに従って並べ替える方法は何ですか? たとえば、次の配列です:

        $arr=[
            [
                'age'=>50,
                'name'=>'张三'
            ],
            [
                'age'=>18,
                'name'=>'李四'
            ],
            [
                'age'=>27,
                'name'=>'王五'
            ]
        ];

年齢や名前で並べ替えるにはどうすればよいですか? array_multisort を使用できます。指定したフィールドで並べ替える関数。

 array_multisort(array_column($arr,'age'),SORT_ASC,$arr);
var_dump($arr);

印刷結果

array (size=3)
  0 => 
    array (size=2)
      'age' => int 18
      'name' => string '李四' (length=6)
  1 => 
    array (size=2)
      'age' => int 27
      'name' => string '王五' (length=6)
  2 => 
    array (size=2)
      'age' => int 50
      'name' => string '张三' (length=6)

このようにソートされます。つまり、array_multisort関数を使用してソートする場合、array_columnを使用して配列で指定された列をソートし、最初のパラメータを抽出します。第二引数と第三引数に配列を入れると、指定したフィールドでソートすることができます。 SORT_ASC は昇順、SORT_DESC は降順です。

推奨学習: php ビデオ チュートリアル

以上がPHP で array_multisort 関数を使用して、指定されたフィールドで配列を並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はsegmentfaultで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。