69

重複の可能性:
PHP で配列とデータをソートするにはどうすればよいですか?
PHPで多次元配列をソートする方法 PHP サブ配列値で配列をソートする
PHP
多次元配列を値でソートする

私の配列は次のようになります。

Array(
    [0] => Array(
         [name] => Bill
         [age] => 15
    ),
    [1] => Array(
         [name] => Nina
         [age] => 21
    ),
    [2] => Array(
         [name] => Peter
         [age] => 17
    )
);

名前に基づいてアルファベット順に並べ替えたいと思います。PHP Sort Array By SubArray Valueを見ましたが、あまり役に立ちませんでした。これを行う方法はありますか?

4

2 に答える 2

168

これがあなたの答えであり、100%機能します。テストしました。

<?php
$a = Array(
    1 => Array(
         'name' => 'Peter',
         'age' => 17
    ),
    0 => Array(
         'name' => 'Nina',
         'age' => 21
    ),
    2 => Array(
         'name' => 'Bill',
         'age' => 15
    ),
);
function compareByName($a, $b) {
  return strcmp($a["name"], $b["name"]);
}
usort($a, 'compareByName');
/* The next line is used for debugging, comment or delete it after testing */
print_r($a);
于 2012-05-07T15:34:29.443 に答える
18

usortあなたの友達です:

function cmp($a, $b)
{
        return strcmp($a["name"], $b["name"]);
}

usort($array, "cmp");
于 2012-05-07T15:22:18.763 に答える