utf-8中文截取函数
在使用 php函数截取 UTF-8 中文字符时,通常不会出现什么问题,UTF-8是国际通用的字符类型,也是使用较多的类型之一,但有时候,在页面当中进行截取字符串时,如果字符串中出现逗号,句话等,未尾截取的字符就会出现一个黑框里面有一个问号,或者索性是问号或其它转码后的字符,不能正常显示。
暂时先不去管它是什么原因吧,先找一个可以使用的utf-8中文截取函数,把功能先实现了,注意一点的是,使用这个函数,首先要将网页的编码进行转换成 utf-8,这样不会出现乱码的问题,下面是函数的说明。
//函数说明:$str:字符串.$maxlen:在该数以下长度不加"...".$len:截取长度
function utf_substr($str,$maxlen,$len){
if(strlen("$str")>=$maxlen){
for($i=0;$i<$len;$i++){
$temp_str=substr($str,0,1);
if(ord($temp_str) > 127){
$i++;
if($i<$len){
$new_str[]=substr($str,0,3);
$str=substr($str,3);
}
}else{
$new_str[]=substr($str,0,1);
$str=substr($str,1);
}
}
return join($new_str)."...";
}else{
return $str;
}
}
[/code]
你家小老鼠饿了……
截取成功。。呼呼
备份,技术文章。以后备用。
这是一个技术活了,我以前不没去想过这个问题!
可是去试试。
不错不错。
马克一个 正需要
系统自带有一个转换函数..