ホームページ  >  記事  >  バックエンド開発  >  文字列の長さを返す PHP 関数 strlen()

文字列の長さを返す PHP 関数 strlen()

黄舟
黄舟オリジナル
2017-11-04 11:02:222749ブラウズ

この関数は文字列「Hello」の長さを返します:

<?php
echo strlen("Hello");
?>

定義と使用法

strlen() 関数は文字列の長さを返します。

構文

strlen(string)
パラメータ 説明
文字列 必須。チェックする文字列を指定します。

技術的な詳細

戻り値: 成功した場合は文字列の長さを返し、文字列が空の場合は 0 を返します。
PHP バージョン: 4+
更新ログ: PHP 5.3.0 より前では、この関数は配列を文字列 Array として扱っていたため、長さ 5 の文字列を返し、E_NOTICE レベルのエラーを生成していました。

その他の例

例 1

文字列 "Hello World" の長さを返します:

<?php
echo strlen("Hello world!");
?>

PHP では、関数 strlen() は文字列の長さを返します。関数のプロトタイプは次のとおりです。

int strlen(string string_input);

パラメーター string_input は、処理される文字列です。

strlen() 関数は、文字列が占めるバイトの長さを返します。英語の文字、数字、およびさまざまな記号はすべて 1 バイトを占め、その長さはすべて 1 です。正午の文字は 2 バイトを占めるため、正午の文字の長さは 2 です。たとえば

<?php 
echo strlen("www.sunchis.com"); 
echo strlen("三知开发网"); 
?>
“echo strlen("www.sunchis.com");”的运行结果:15 
“echo strlen("三知开发网");”的运行结果:15

ここで質問なのですが、漢字は 2 バイトを占めませんか? 「Sanzhi Development Network」には明らかに 5 つの漢字が含まれていますが、どうして結果が 15 文字になるのでしょうか?

その理由は、strlen() を計算するときに、UTF-8 の漢字の場合、長さが 3 であるものとして扱われるからです。

以上が文字列の長さを返す PHP 関数 strlen()の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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