欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

更为方便的字符串截断+省略号:subtext()

程序员文章站 2022-04-06 13:58:02
...
更为简化的调用,并且更少的判断,更快的速度。
ThinkPHP 官方扩展的 msubstr 方法其实挺好的,但有以下几个问题:
1,调用的时候会多次判断,包括2次判断是否自带了 mb_substr 和 iconv_substr 函数;
2,无论是否超出长度,如果有 $suffix=true 都会追加省略号,这个不太合理;

介于以上两点,并且在确保自己的服务器支持 mb_substr 函数、并且都是 utf-8 编码的情况下,我们其实可以自己在 Common/common.php(3.2 版本中为 function.php) 中自己添加一个 subtext 的函数,代码如下:function subtext($text, $length)
{
if(mb_strlen($text, 'utf8') > $length)
return mb_substr($text, 0, $length, 'utf8').'...';
return $text;
}
这样在模版中调用的话,只需要用 {$vo.title|subtext=10} 这样即可,同时实现了,如果没超出长度,则不追加省略号的效果。

好吧,这篇文章其实有点卖萌了,稍微熟悉 PHP 的都会这么做
(ノ・ω・)ノ゙ 撒花

AD:真正免费,域名+虚机+企业邮箱=0元