今天在工作的时候遇到截取汉字的有问题,如果使用substr取的话会有乱吗出现,需要使用PHP的mbstring扩展模块---mb_strcut和mb_substr,这两个方法区别如下.
举个例子来说,有一段文字, 分别用mb_substr和mb_strcut来做切分:
CODE:
-
<?php
-
$str = '我是一串比较长的中文-www.ooso.net';
-
echo "mb_substr:" . mb_substr ($str, 0, 6, 'utf-8' );
-
echo "<br>";
-
echo "mb_strcut:" . mb_strcut ($str, 0, 6, 'utf-8' );
-
?>
输出结果如下:
mb_substr:我是一串比较 mb_strcut:我是
从上面的例子可以看出,mb_substr是按字来切分字符,而mb_strcut是按字节来切分字符,但是都不会产生半个字符的现象。