PHPで多次元配列をキーでソートする方法


  1. array_multisort() 関数を使用する方法: array_multisort() 関数は、複数の配列を同時にソートするための強力な関数です。次のように使用します。

    $array = [ 
       ['name' => 'John', 'age' => 25],
       ['name' => 'Jane', 'age' => 30],
       ['name' => 'Adam', 'age' => 20]
    ];
    // name キーで昇順にソート
    array_multisort(array_column($array, 'name'), $array);
    // 結果を出力
    print_r($array);

    上記の例では、array_multisort() 関数と array_column() 関数を使用して、$array 配列を 'name' キーで昇順にソートしています。

  2. usort() 関数を使用する方法: usort() 関数は、ユーザー定義の比較関数を使用して配列をソートするための関数です。次のように使用します。

    $array = [ 
       ['name' => 'John', 'age' => 25],
       ['name' => 'Jane', 'age' => 30],
       ['name' => 'Adam', 'age' => 20]
    ];
    // name キーで昇順にソートする比較関数
    function compareByName($a, $b) {
       return strcmp($a['name'], $b['name']);
    }
    // 配列をソート
    usort($array, 'compareByName');
    // 結果を出力
    print_r($array);

    上記の例では、usort() 関数と compareByName() 関数を使用して、$array 配列を 'name' キーで昇順にソートしています。

これらの方法を使用することで、PHPで多次元配列をキーでソートすることができます。必要に応じて、他のキーでもソートすることができます。詳細な使い方やオプションについては、PHPの公式ドキュメントを参照してください。