$str = '这样一来我的字符串就不会有乱码^_^';
echo "mb_substr:" . mb_substr($str, 0, 7, 'utf-8');
//结果:这样一来我的字
echo "";
echo "mb_strcut:" . mb_strcut($str, 0, 6, 'utf-8');
//结果:这样
?>
如果是UTF-8字符编码的,应该是每个中文字符占三个字符位,
比如$a = "还好吧";
substr($a, 3, 3);//输出“好”,
注意$a赋值的时候要么都是中文字符(包括标点),如果有英文字符标点会影响
php 截取两个中文字中间的字符串
<?php
header('Content-Type:text/html;charset=utf-8');
$str="百度知道提了截取中文字符串的问题";
$t1 = mb_strpos($str,'提');
$t2 = mb_strpos($str,'串');
echo $s = mb_substr($str,$t1,$t2-$t1);
如果需要从”提“字的下一个字开始
那直接把$t1变量加1就可以了
$t1 = mb_strpos($str,'提')+1;
php 截取字符串最后两个字符
$str="abcdefghijklmn";
echo substr($str, -2); //mn