PHPでウェブの世界と繋がろう!
menu
ホーム > PHPサンプル > 配列系 > 値によるソートをしたい(昇順)(キーと値の関係は維持)

値によるソートをしたい(昇順)(キーと値の関係は維持)

Pocket

サンプルコード sample code
配列ソート 値によるソート 昇順 asort()
論理値 = asort(配列 [,ソート型のフラグ]);
//[ ]省略可能

例:

$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

となります。

配列の各要素を値を基準に低位から高位へ並べ替えます。キー と 値 の関係は維持されます。成功した場合に 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 で) 組み合わせて使い、 文字列のソートで大文字小文字を区別しないようにします。

サンプルコード

– サンプル Click Here ! –

<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

– サンプル Click Here ! –


タグ(=記事関連ワード)

タグ: , ,

日付

投稿日:2012年3月22日
最終更新日:2014年02月20日

関連記事

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

http://www.tryphp.net/phpsample-array-asort/trackback/