キーと値の対応を保ったまま並べ替える

水曜日 , 4, 10月 2017 Leave a comment

sort/ rsort 関数で連想配列を並べ替えた場合、値だけが並べ替えられ、キーは並べ替えられません。たとえば、 $ar = array (“orange” => 20 , “apple” => 10) ; として配列を作成し、これを sort 関数で並べ替えると、 $ar [“orange”] が10 になり、 $ar [“apple”] が20 になります。 しかし、キーと値の対応を保ったまま並べ替えたいという場合もあるでしょう。 その場合は、 rasortJまたはrarsort関数を使用します。 asort は昇順、 arsort は逆順 で並べ替えます。 asort / arsort 関数を使用する例としては、「文章中の単語の出現回数をカウント し、回数の少ない順あるいは多い順に表示するというようなことが考えられま す。連想配列のキーに単語、値に出現回数を入れた後、 asort (arsort) 関数で並べ替 えれば、出現回数の少ない(多い)順に並べ替えられます。 たとえば、ある文章を調べていくつかの単語の出現回数をカウントしたところ、これを出現回数の多い順に並べ替 えて表示してみましょう。 それには、単語をキー、出現回数を値とした連想配列を作成し て、それを arsort 関数で並べ替えます。実際にスクリプトを作成する。

並べ替え前の結果をテープルに表示しま す。そして、 22 行目でarsort 関数を使用して単語 の出現回数順を並べ替え、残りの部分で結果を表示しています。

キーで並べ替える(rsort) およびasort (arsort) 関数は、配列 の各要素の値で並べ替えるものです。それに対し て、キーで並べ替える関数として、 ksortと krsortがあります。 ksort は昇順、 krsort は降順 で並べ替えます。いずれも、キーと値との対応は 保たれます。

Please give us your valuable comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です