count_chars

count_chars関数:文字列に含まれるバイト値の出現回数を数える

使い方

$counts = count_chars( $text );

「文字列に含まれるバイト値の出現回数を数える」
自分で書いておきながら、なんのことか分かりにくい。。。
要は、文字列(バイナリデータでもよい)の中に同じバイトが何回含まれているかをバイトごとに回数を数えてくれるという摩訶不思議な仕様を持つ関数です。

実は第2引数の指定も可能です。
第2引数には振る舞いを数値で指定することができます。第2引数を省略すると1が指定された振る舞いになります。

第2引数 振る舞い
0 各バイト値毎の出現回数を連想配列で返す。連想配列はバイト値がキーになって、出現回数が要素の値になる。ただし、出現しないバイト値も配列に含まれる。
1 0のモードの時とほぼ同じで、出現しないバイト値は戻り値の連想配列に含まれなくなる。
2 1のモードの逆になって、出現しないバイト値だけの連想配列を返す。
3 出現するバイト値の文字をバイト値の昇順で並べた文字列を返す。
4 3のモードの逆になって出現しないバイト値を昇順で並べた文字列を返す。

使いどころ

いったいどういう場面でこの関数を使うのか、私も教えてほしいくらいです。
関数の名前からもわかる通り、文字の出現回数を計測するには便利?!かもしれません。
ですが、ASCII文字しか文字列に存在しないことがわかっている前提が良いかと思います。

どなたかこの関数をどういう風に使ったことがあるという経験談を教えてください。。。

公式サイト

http://jp1.php.net/manual/ja/function.count-chars.php