PHP 連想配列のソート

連想配列をソートするには

array_multisort(ソートの基準, ソートの順番, ソートしたい配列);

の構文で使えるarray_multisortを使えます。

$array = array(
  array('id'=>2,'name'=>'kyoto'),
  array('id'=>1,'name'=>'tokyo'),
  array('id'=>3,'name'=>'osaka')
);

foreach ($members as $key => $value) {
  $sort[$key] = $value['id'];//idを取り出す([2,1,3])
}

// array_multisortで'id'の列を昇順に並び替える
array_multisort($sort, SORT_ASC, $array);

// ソート済みの変数を出力
print_r($array);

出力結果

[0] => Array ( [id] => 1 [name] => tokyo )

[1] => Array ( [id] => 2 [name] = kyoto )

[2] => Array ( [id] => 3 [name] => osaka )

idを基準としてソートした配列ができました!