在php中,可以使用mb_strlen()函数来检查汉字字符串有几个字符,语法为“strlen(字符串,"字符编码")”,能精确返回汉字字符串的字符个数;该函数可以通过设置的字符编码来处理中文字符,让汉字、英文、数字等,都只占一个字符长度。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
在 PHP 中常用的计算字符串长度的函数有两个,分别是 strlen() 和 mb_strlen() 函数。当处理全英文字符串时,这两个函数的效果是一样的,而处理中英文混合或纯中文的字符串时,这两个函数会有一些差异。
strlen()无法精确计算中英文混合或纯中文的字符串,而mb_strlen() 可以。
因此,想要检查汉字字符串有几个字符,需要使用mb_strlen()函数。
php mb_strlen()函数
mb_strlen() 函数返回字符串的长度,即统计字符串中字符的个数。
语法:
strlen(字符串,"字符编码")
该函数可以通过设置字符编码从而返回对应的字符数,很好的处理了中文字符串的长度问题。
在 mb_strlen() 函数中,通过设置字符编码,无论是汉字,还是英文、数字、小数点、下划线和空格,都只占一个字符长度。
返回值:如果成功则返回字符串的长度,如果字符串为空则返回 0。
示例:检查汉字字符串有几个字符
<?php header('content-type:text/html;charset=utf-8'); $str = "欢迎来到这里"; echo '字符串 “'.$str.'” 的字符个数为:'.mb_strlen($str).'<br>'; echo '字符串 “'.$str.'” 的字符个数为:'.mb_strlen($str,"utf-8").'<br>'; ?>

可以看出,若省略了第二个参数,该函数则使用内部字符编码,这样一个 GB2312 编码的汉字占两个字符长度,一个 UTF-8 编码的汉字占三个字符长度。
所以在统计汉字字符串长度时,第二个参数不可省略。
mb_strlen()函数不仅统计纯汉字字符,也可统计中英文混合字符串。
<?php header('content-type:text/html;charset=utf-8'); $str = "欢迎来到PHP中文网"; echo '字符串 “'.$str.'” 的字符个数为:'.mb_strlen($str,"utf-8").'<br>'; ?>

推荐学习:《PHP视频教程》
Atas ialah kandungan terperinci php怎么检查汉字字符串有几个字符. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Bagaimana untuk membuka fail php
Bagaimana untuk mengalih keluar beberapa elemen pertama tatasusunan dalam php
Apa yang perlu dilakukan jika penyahserialisasian php gagal
Bagaimana untuk menyambungkan php ke pangkalan data mssql
Bagaimana untuk menyambung php ke pangkalan data mssql
Bagaimana untuk memuat naik html
Bagaimana untuk menyelesaikan aksara bercelaru dalam PHP
Bagaimana untuk membuka fail php pada telefon bimbit