作用:mbstring扩展库用于处理多字节字符串,对PHP来说很重要的. 不同字符编码,其在内存占用的字节数不一样。如ASCII编码字符占用1个字节,UTF-8编码的中文字符是3字节,GBK为2个字节 **原因:**PHP不支持UNICODE,只有PHP变量支持中文,PHP变量的命名规则是[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*,这个只是字符集的一部分,如果是unicode,就没必要限定这个范围了
**例如:**要获得以UTF-8编码的字符串的正确长度,必须使用mb_strlen($string, 'UTF-8'),而不是strlen($string).
echo mb_strlen('你好啊','UTF-8'); // 输出 3
echo strlen('你好啊'); // 输出 9
mixed mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] ) — 获取字符串的长度 $encoding 参数为字符编码。如果省略,则使用内部字符编码
设置获取内部字符编码函数
mixed mb_internal_encoding ([ string $encoding = mb_internal_encoding() ] )
<?php
/* 设置内部字符编码为 UTF-8 */
mb_internal_encoding("UTF-8");
/* 显示当前的内部字符编码*/
echo mb_internal_encoding();
?>
返回值 1.返回具有 encoding 编码的字符串 str 包含的字符数。 多字节的字符被计为 1。 如果给定的 encoding 无效则返回 FALSE。
安装扩展: win系统: 打开c:/windows/php.ini 把 ;extension=php_mbstring.dll 改成 extension=php_mbstring.dll 并在php5.5.12\ext 文件下添加 php_mbstring.dll扩展包 unix: 打开/etc/php.ini 把 ;extension=php_mbstring.so 改成 extension=php_mbstring.so 可能通过查看phpinfo();来确认php.ini的位置以及PHP当前支持的一些特性。