array_multisortは、PHPで配列のソートを行う関数。
良く使うので使い方をメモ。
例えば下記のような配列$bookmarksがあったとして、
Array
(
[0] => Array
(
[id] => 001
[title] => Amazon
[url] => http://amazon.co.jp/
[category] => 買物
)
[1] => Array
(
[id] => 002
[title] => Google
[url] => http://google.co.jp/
[category] => 検索
)
[2] => Array
(
[id] => 003
[title] => Yahoo!Japan
[url] => http://yahoo.co.jp/
[category] => 検索
)
)
titleで昇順に並べ替える場合は以下のように書く。
foreach ($list as $key => $value){
$key_title[$key] = $value[id];
}
array_multisort( $key_title,SORT_ASC, $list );
categoryで降順に並べ替えた後、さらにtitleで昇順に並べ替えたい場合。
foreach ($list as $key => $value){
$key_title[$key] = $value[id];
$key_category[$key] = $value[category];
}
array_multisort( $key_category,SORT_DESC, $key_title,SORT_ASC, $list );
コメント(0)