php strlen 与 mb_strlen
int strlen ( string $string )1、计算指定字符串占用的字节长度。
2、如果字符串中包含中文字符,如果文件是gbk编码,一个中文字符占用2个字节,如果文件是utf-8编码,一个中文字符占3个字节。
int mb_strlen ( string $str [, string $encoding ] )
1、计算指定字符串的字符个数。
2、如果字符串中包含中文字符,需指定编码,指定的编码须确保与当前文件的编码一致。
示例1,文件编码与指定编码都是utf-8.
$str = "123456中国";
echo strlen($str);
echo '<br>';
echo mb_strlen($str,'utf-8');
结果说明:
utf-8编码下,一个中文字符占3个字节,所以strlen的结果=6+2*3=12
mb_strlen字符数是8
示例2,文件编码与指定编码都是gbk
$str = "123456中国";
echo strlen($str);
echo '<br>';
echo mb_strlen($str,'gbk');
结果说明:
gbk编码下,一个中文字符占2个字节,所以strlen的结果=6+2*2=10
mb_strlen字符数是8
页:
[1]