文字数→10
マルチバイト文字列の文字数をカウントする
スポンサーリンク
PHP でマルチバイト文字列の文字数をカウントするには mb_strlen 関数を使用します。
php(書式) | |
1 | $int = mb_strlen(カウント対象の文字列, 文字コード) |
第2引数の文字コードは省略もできますが、第1引数の文字列の文字コードと内部エンコーディングが一致しない場合は正しくカウントできないので、必ず指定するようにした方が良いです。
文字列カウントのサンプルコードは以下の通りです。
php(実行可能なサンプルコード) | |
1 2 3 4 | $str = 'マルチバイトの日本語'; //第2引数には、第1引数に渡す文字列の文字コードを渡します。 echo '文字数→' . mb_strlen($str, 'SJIS-win'); |
上記を実行すると結果は以下の通りです。
この mb_strlen 関数は半角カナやアルファベット、特殊記号などが混在していても全て1文字としてカウントします。
php(実行可能なサンプルコード) | |
1 2 3 4 5 6 7 8 9 10 | $ary_str = array( 'ハンカクカナの日本語', 'abc①②③XYZ', '㈱バヤシタ', ); foreach($ary_str as $str){ //全ての文字を1文字として計算します echo "[" . $str . ']の文字数→' . mb_strlen($str, 'SJIS-win') . "\n"; } |
上記の実行結果は以下の通りです。
[ハンカクカナの日本語]の文字数→10 [abc①②③XYZ]の文字数→9 [㈱バヤシタ]の文字数→5
スポンサーリンク
- マルチバイト文字列処理
- 文字列のエンコーディング(文字コード)を変換する
- マルチバイト文字列の文字数をカウントする
- 文字列の右側から指定した文字数を取り出す方法
- 文字列の左側から指定した文字数を取り出す方法