PHP判断字符串包含几个字符的方法:1、使用strlen()函数,语法“strlen($string)”;2、使用mb_strlen()函数,语法“mb_strlen($string, '字符编码')”。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
在 PHP 中常用的计算字符串长度的函数有两个,分别是 strlen() 和 mb_strlen() 函数。当处理全英文字符串时,这两个函数的效果是一样的,而处理中英文混合或纯中文的字符串时,这两个函数会有一些差异。
strlen() 函数可以返回给定字符串的长度,其语法格式如下:
strlen($string)
参数 $string 为需要计算长度的字符串。如果 $string 为空则返回 0。
注意:在 strlen() 函数中,数字、英文、小数点、下划线和空格占一个字符长度;而一个 GB2312 编码的汉字占两个字符长度,一个 UTF-8 编码的汉字占三个字符长度。
示例:
<?PHP header(Content-type:text/html;charset=utf-8); $str2 = 'hello'; echo strlen($str2), '<br>'; //5 $str3 = '中国'; echo strlen($str3), '<br>'; //6 $str4 = ''; echo strlen($str4), '<br>'; //0 ?>
mb_strlen() 函数同样可以返回字符串的长度,语法格式如下:
mb_strlen($str [, $encoding = mb_internal_encoding()])
其中,$str 为需要计算长度的字符串,$encoding 是可选参数,为字符编码,如果省略则使用内部字符编码。
mb_strlen() 函数的返回值为具有 $encoding 编码的字符串 $str 所包含的字符数,如果 $encoding 无效则返回 false。
注意:与 strlen() 函数不同,在 mb_strlen() 函数中,无论是汉字,还是英文、数字、小数点、下划线和空格,都只占一个字符长度。
示例:
<?PHP header(Content-type:text/html;charset=gdk); $str1 = 'hello'; echo mb_strlen($str1), '<br>'; //5 $str2 = '你好中国'; echo mb_strlen($str2, 'utf-8'), '<br>'; //4 $str3 = '你好中国'; echo strlen($str3), '<br>'; //12 ?>
推荐学习:《PHP教程》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。