有不少php初学者截取字符都会使用substr()函数或者mb_substr()函数来截取了,第一个中文肯定乱码了,第二个性能不好,下面我总结了几个自定的中文字串截取无乱码实例.
例1代码如下:
例2代码如下:
$length) {
$str = '';
$len1 = $start + $length; //截取到原字符串的位置
for ($i = $start; $i < $len1; $i++) {
if (ord(substr($string, $i, 2)) > 0xa0) //在ASCII中,0xa0表示汉字的开始
{
$str.= substr($string, $i, 2);
$i++;
} else {
$str.= substr($string, $i, 1);
}
}
return $str . '...';
} else {
return $string;
}
}
?>
例3代码如下:
0xa0) {
$tmpstr.= substr($str, $i, 2);
$i++;
} else {
$tmpstr.= substr($str, $i, 1);
}
}
return $tmpstr;
}
$str = "waiting for you 等wait你back";
echo chinesesubstr($str, 0, 19)
?>
本文地址:
立即学习“PHP免费学习笔记(深入)”;
转载随意,但请附上文章地址:-)











