方法使CodeIgniter的ellipsize()支持中国截断

CodeIgniter的文本辅助有ellipsize()过滤HTML标签和截断文本的很好方法。但这是特别不好的中国人,并有一个随机码在中国。

功能ellipsize()已被修改,以支持中国:

在CI 2.1.3版本,修改ci_2.1.3 系统助理 text_helper.php文件

复制代码如下:功能ellipsize($代码= 'utf-8,
str,max_length美元,美元= 1美元位置,省略= 'hellip ');
{
条形标签
$str =装饰(strip_tags($str));

是绳子足够长的 / / ellipsize
如果(mb_strlen($str,$页)< = $ max_length)
{
返回$ STR;
}

为求= mb_substr($str,0楼(max_length美元美元美元地位),页);

$ =位置($位置> 1)1:$位置;

如果($ = 1)
{
美元= mb_substr($str,0,
-(- mb_strlen max_length美元(美元美元求,代码页)),$页);
}
其他的
{
美元mb_substr($str =,
-(- mb_strlen max_length美元(美元美元求,代码页)),max_length美元,$页);
}

返回$。$省略号。$结束;
}

此代码替换成mb_substr strlen函数,并mb_strlen,这可以很好的支持中文截断。