PHPサンプル
UPDATE:2017年03月29日
値によるソートをしたい(昇順)(キーと値の関係は維持)
配列ソート 値によるソート 昇順 asort()
論理値 = asort(配列 [,ソート型のフラグ]); //[ ]省略可能
例:
1 2 3 4 5 6 7 8 | <!-- サンプルコード --> <?php $ary = array('3c' => 'c', '2b' => 'b', '1a' => 'a'); asort($ary); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> |
結果は
キー($key) : 3a 値($value) : a
キー($key) : 2b 値($value) : b
キー($key) : 1c 値($value) : c
キー($key) : 2b 値($value) : b
キー($key) : 1c 値($value) : c
となります。
配列の各要素を値を基準に低位から高位へ並べ替えます。キー と 値 の関係は維持されます。成功した場合に TRUE を、失敗した場合に FALSE を返します。ソートの動作を「ソート型のフラグ」で指定できます。
POINT
- 配列要素の値が基準となる
- キーと値の相関関係は維持する
POINT ソート型のフラグ
- SORT_REGULAR – そのまま比較(型変更なし)
- SORT_NUMERIC – 数値として比較
- SORT_STRING – 文字列として比較
- SORT_LOCALE_STRING – 現在のローケル(言語や国)に基づいて比較。ローケルを変更する場合は setlocale() 関数で変更します。
- SORT_NATURAL – 文字列として比較。natsort() 関数と同様の「自然順」で比較する。
- SORT_FLAG_CASE – SORT_STRING や SORT_NATURAL と (ビット OR で) 組み合わせて使い、 文字列のソートで大文字小文字を区別しないようにします。
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 | <!-- サンプルコード --> <h3>配列ソート 値によるソート 昇順</h3> <?php $ary = array('0g' => 'g', '1f' => 'f', '2e' => 'e', '3d' => 'd', '4c' => 'c', '5b' => 'b', '6a' => 'a'); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } echo 'asort後↓<br>'; asort($ary); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> |
実行結果
配列ソート 値によるソート 昇順
キー($key) : 0g 値($value) : g
キー($key) : 1f 値($value) : f
キー($key) : 2e 値($value) : e
キー($key) : 3d 値($value) : d
キー($key) : 4c 値($value) : c
キー($key) : 5b 値($value) : b
キー($key) : 6a 値($value) : a
asort後↓
キー($key) : 6a 値($value) : a
キー($key) : 5b 値($value) : b
キー($key) : 4c 値($value) : c
キー($key) : 3d 値($value) : d
キー($key) : 2e 値($value) : e
キー($key) : 1f 値($value) : f
キー($key) : 0g 値($value) : g
キー($key) : 0g 値($value) : g
キー($key) : 1f 値($value) : f
キー($key) : 2e 値($value) : e
キー($key) : 3d 値($value) : d
キー($key) : 4c 値($value) : c
キー($key) : 5b 値($value) : b
キー($key) : 6a 値($value) : a
asort後↓
キー($key) : 6a 値($value) : a
キー($key) : 5b 値($value) : b
キー($key) : 4c 値($value) : c
キー($key) : 3d 値($value) : d
キー($key) : 2e 値($value) : e
キー($key) : 1f 値($value) : f
キー($key) : 0g 値($value) : g
タグ(=記事関連ワード)
日付
投稿日:2012年3月22日
最終更新日:2017年03月29日
最終更新日:2017年03月29日
このカテゴリの他のページ
この記事へのコメント
トラックバックurl
https://wepicks.net/phpsample-array-asort/trackback/