PHP strlen()与mb_strlen():获取字符串长度
1、strlen() 函数
strlen() 函数可以返回给定字符串的长度,其语法格式如下:strlen($string)
参数 $string 为需要计算长度的字符串。如果 $string 为空则返回 0。注意:在 strlen() 函数中,数字、英文、小数点、下划线和空格占一个字符长度;而一个 GB2312 编码的汉字占两个字符长度,一个 UTF-8 编码的汉字占三个字符长度。
【示例】使用 strlen() 函数获取字符串的长度。<?php $str = "http://www.funly.net/php/"; echo '字符串“'.$str.'”的长度为:'.strlen($str).'<br>'; $str = "f范军手札"; echo '字符串“'.$str.'”的长度为:'.strlen($str).'<br>'; $str = "php"; echo '字符串“'.$str.'”的长度为:'.strlen($str); ?>
字符串“http://www.funly.net/php/”的长度为:25
字符串“C语言中文网”的长度为:13
字符串“php”的长度为:3
2、mb_strlen() 函数
mb_strlen() 函数同样可以返回字符串的长度,语法格式如下:mb_strlen($str [, $encoding = mb_internal_encoding()])
其中,$str 为需要计算长度的字符串,$encoding 是可选参数,为字符编码,如果省略则使用内部字符编码。mb_strlen() 函数的返回值为具有 $encoding 编码的字符串 $str 所包含的字符数,如果 $encoding 无效则返回 false。
注意:与 strlen() 函数不同,在 mb_strlen() 函数中,无论是汉字,还是英文、数字、小数点、下划线和空格,都只占一个字符长度。
【示例】 使用 mb_strlen() 函数获取字符串长度。<?php $str = "f范军手札"; echo '字符串“'.$str.'”的长度为:'.mb_strlen($str).'<br>'; $str = "http://www.funly.net/php/"; echo '字符串“'.$str.'”的长度为:'.mb_strlen($str).'<br>'; $str = "PHP 教程"; echo '字符串“'.$str.'”的长度为:'.mb_strlen($str); ?>
字符串“C语言中文网”的长度为:5
字符串“http://wwww.funly.net/php/”的长度为:25
字符串“PHP 教程”的长度为:6
提示:mb_strlen 并不是 PHP 的核心函数,使用前需要确保在 php.ini 中加载了 php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函数的问题。
上一篇:PHP mb_substr()
下一篇:PHP学习之校验日期格式合法性?