中国語と英語を含む文字列の自然な長さを取得します

高洛峰
リリース: 2023-03-05 15:26:01
オリジナル
1216 人が閲覧しました

エンコーディングの認識をテストする

コード例:

$str = '大家好abc';
echo strlen($str);
echo '<br/>';
echo mb_strlen($str,'utf-8');
ログイン後にコピー
ログイン後にコピー

結果は 12, 6 です

  • strlen() は文字列のバイト数を計算します。英語の 1 文字は 1 バイトで、中国語の文字は GBK でエンコードされますは 2 バイト、UTF8 は 3 バイトなので、バイト数は 3*3+3 = 12 です

  • mb_strlen() には mb_string 拡張子が必要です、混合 mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] ) 、最初のパラメータは検出する文字列、2 番目のパラメータはエンコード形式、マルチバイト文字は 1 として記録されます


エンコードの認識をテストします

コード例:

$str = '大家好abc';
echo strlen($str);
echo '<br/>';
echo mb_strlen($str,'utf-8');
ログイン後にコピー
ログイン後にコピー

結果 です12, 6

  • strlen() は、GBK エンコードでは英語文字は 1 バイト、中国語文字は 2 バイト、UTF8 は 3 バイトなので、バイト数は 3* となります。 3+3 = 12

  • mb_strlen() には mb_string 拡張子が必要です。混合 mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] )、最初のパラメータは検出する文字列、2 番目のパラメータはマルチバイト文字は 1 として記録されます

中国語と英語の文字列の自然長の取得に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!