php count_charsで文字列の各バイトの存在する値を取得する
phpで、count_charsを使用して、文字列の各バイトの存在する値を取得するサンプルコードを記述してます。phpのバージョンは8.0です。
環境
- OS CentOS Linux release 8.0.1905 (Core)
- php 8.0.0
- nginx 1.14.1
count_chars使い方
count_charsを使用すれば、文字列の各バイト(0~ 255)の存在する値を取得することが可能です。
$result = count_chars(文字列);
以下は、文字列の各バイト(0~ 255)の存在する値を取得するサンプルコードとなります。
<?php
$str = "mebee";
$result = count_chars($str);
print_r($result);
実行結果
Array
(
[0] => 0
[1] => 0
.
.
[97] => 0
[98] => 1
[99] => 0
[100] => 0
[101] => 3
[102] => 0
[103] => 0
[104] => 0
[105] => 0
[106] => 0
[107] => 0
[108] => 0
[109] => 1
.
.
[254] => 0
[255] => 0
)
見にくいので、「0」以外のキー名のみ取得します。
<?php
$str = "mebee";
$result = count_chars($str);
foreach ($result as $k => $v) {
if ($result[$k] != 0) echo $k . PHP_EOL;
}
実行結果
98
101
109
第二引数に「1」を指定すると、ほぼ上記と同じことができます。
<?php
$str = "mebee";
$result = count_chars($str,1);
print_r($result);
実行結果
Array
(
[98] => 1
[101] => 3
[109] => 1
)
第二引数に使用できるオプションは以下の通りとなります。
0 : キーと出現回数を値した配列を出力
1 : キーと出現回数を値した配列でゼロ以外のものを出力
2 : キーと出現回数を値した配列でゼロのものを出力
3 : 利用されている文字列を返す
4 : 利用されていない文字列を返す
オプション「3」を使用した例は以下となります。
<?php
$str = "mebee";
$result = count_chars($str,3);
print_r($result);
実行結果
bem
-
前の記事
php 多次元配列を生成する 2020.12.08
-
次の記事
Nuxt.js ライブラリ「vue-currency-directive」をインストールして通貨フォーマットを設定する 2020.12.08
コメントを書く