中文字符串的截取

作者:enenba | 发表于:2011-11-12 11:42 | 分类:php源码

截取字符串,在很多的CMS都用到,以下一个简单的版本,中文也是支持的。

/*
参数1:被截取的字符串
参数2:截取的起始位置
参数3:截取长度
参数四:多余部分使用more表示,并加上URL
*/

function msubstr($str,$len,$start=0,$url="")
{
	 if(strlen($str)<$len)return $str;
	 $tmpstr = "";
	 $strlen = $start + $len;
	 for($i = 0; $i < $strlen; $i++) 
{
        if(ord(substr($str, $i, 1)) > 0xa0) 
        {
            $tmpstr .= substr($str, $i, 2);
            $i++;
        }
         else
        {
            $tmpstr .= substr($str, $i, 1);
        }
}
return $tmpstr.">>>>>[<a href='$url'  title='$str'>more</a>]";
}
$test = '多余部分使用more表示,并加上URL';
echo msubstr($test,10,0,'http://www.baidu.com');


 

上一篇: 正则匹配中文(UTF8)+英文+数字   |   下一篇:大光棍节后 我的博客enenba开始上线!» 标签: 正则匹配 php函数 字符串

评论:

2012-10-06 16:29

以前我也做过PHP,也再这个地方纠结了很久!

2011-12-28 23:25

这是A的第1次回复

2011-12-28 23:25

这是A的第一次评论

2011-12-28 23:26

这是A的第1次回复的内容