ホームページ  >  記事  >  バックエンド開発  >  PHP 文字列学習: 英語の文字列の長さを計算する方法

PHP 文字列学習: 英語の文字列の長さを計算する方法

青灯夜游
青灯夜游オリジナル
2021-08-04 16:42:552944ブラウズ

前回の記事では、配列の長さを計算する方法を紹介しました。興味のある方はリンクをクリックしてご覧ください→「PHP 配列学習: 2 つの配列の長さを計算する」次元配列 "。今日は文字列を見て、英語の文字列の長さを計算する方法を学びます。

PHP で文字列の長さを計算するために使用される主な関数は、strlen() と mb_strlen() の 2 つです。コード例を使用して、2 つの関数が英語の文字列の長さをどのように計算するかを理解しましょう。

1. strlen() 関数

<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello world!";
echo '字符串 “'.$str.'” 的长度为:'.strlen($str).'<br>';
?>

strlen($string)関数は 1 つのパラメータのみ受け入れます$string (計算される文字列)。このパラメータに渡された値が空の場合は 0 を返します。 strlen() 関数では、 (英語ではカンマ)、数字、英字、小数点 .、下線、スペースなどは 1 文字のみを占めます。

上記の例では、$str 文字列には 10 個の英字、1 個のスペース、1 個の英語の感嘆符、合計 12 文字が含まれているため、出力結果は次のようになります。

PHP 文字列学習: 英語の文字列の長さを計算する方法

ただし、strlen() 関数は中国語文字列の長さの計算には適していません。この関数では、GB2312 でエンコードされた 1 つの中国語文字が長さ 2 文字と 1 つの UTF-8 を占めるためです。 -エンコードされた中国語文字は長さ 2 文字、長さ 3 文字を占めます。

2. mb_strlen() 関数

<?php
header("Content-type:text/html;charset=utf-8");
$str = "hello world!,#%&*@";
echo '字符串 “'.$str.'” 的长度为:'.mb_strlen($str).'<br>';
?>

同様に、mb_strlen() 内の 、数字、英字、小数点 関数 .、アンダースコア、スペース、#、%&*@ は、長さは 1 文字のみを占めますが、中国語の文字は長さが 1 文字のみを占めます。

上記の例では、$str 文字列には 10 個の英字、1 個のスペース、1 個のカンマ、および 6 個のその他の英語記号 (合計 18 文字) が含まれているため、出力結果は次のようになります。

PHP 文字列学習: 英語の文字列の長さを計算する方法

要約:

strlen() 関数と mb_strlen() 関数は、英語の文字列の長さを計算するために使用できます。通常は strlen() を使用するだけですが、場合によっては中国語と英語が混在した文字列になるため、mb_strlen() を使用する必要があります。

わかりました。これですべてです。他に知りたいことがある場合は、これをクリックしてください。 → →php ビデオチュートリアル

最後に、古典的なコース「PHP 文字列処理 (翡翠少女般若心経編)」を読むことをお勧めします。無料です。ぜひ学んでください。 !

以上がPHP 文字列学習: 英語の文字列の長さを計算する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。