php的mbstring扩展模块提供了多字节字符的处理能力,日常最经常使用的就是用mbstring来切分多字节的中文字符,这样能够避免出现半个字符的状况,因为是php的扩展,它的性能也要比一些自定义的多字节切分函数要好上一些。php
mbstring extension提供了几个功能相似的函数,mb_substr和mb_strcut,看看手册上对它们的解释。
函数
举个例子来讲,有一段文字, 分别用mb_substr和mb_strcut来作切分:性能
plain text
code:
<?php
$str = '我是一串比较长的中文||www.163.com';
echo "mb_substr:" . mb_substr($str, 0, 6, 'utf-8');
echo "<br>";
echo "mb_strcut:" . mb_strcut($str, 0, 6, 'utf-8');
?>
输出结果以下:spa
mb_substr:我是一串比较
mb_strcut:我是
/**code
**&引用说明内存
/utf-8
1.变量的引用string
<?it
$a="ABC";io
$b =&$a;
echo $a;//这里输出:ABC
echo $b;//这里输出:ABC
$b="EFG";
echo $a;//这里$a的值变为EFG 因此输出EFG
echo $b;//这里输出EFG
?>
2.函数的引用传递(传址调用 )<?php
function test(&$a)
{
$a=$a+100;
}
$b=1;
echo $b;//输出1
test($b); //这里$b传递给函数的实际上是$b的变量内容所处的内存地址,经过在函数里改变$a的值 就能够改变$b的值了
echo "<br>";
echo $b;//输出101
?>
要注意的是,在这里test(1);的话就会出错,缘由本身去想。
注意:
上面的“ test($b); ” 中的$b前面不要加 & 符号,可是在函数“call_user_func_array”中,若要引用传参,就得须要 & 符号,以下代码所示: