ThinkPHP的截取字符串函数无法显示省略号的解决方法

对于Thinkphp的截取字符串函数无法显示省略号的情况,解决方法如下:
打开Common/extend.php页面,修改msubstr函数如下:

function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true){  if(function_exists("mb_substr")) {   if($suffix)  {     if($str==mb_substr($str, $start, $length, $charset))      {      return mb_substr($str, $start, $length, $charset);      }     else     {      return mb_substr($str, $start, $length, $charset)."...";      }  }    else  {   return mb_substr($str, $start, $length, $charset);  }  }  elseif(function_exists('iconv_substr')) {   if($suffix)  {     if($str==iconv_substr($str,$start,$length,$charset))      {      return iconv_substr($str,$start,$length,$charset);      }     else     {      return iconv_substr($str,$start,$length,$charset)."...";      }    }    else  {   return iconv_substr($str,$start,$length,$charset);  }  }  $re['utf-8']  = "/[/x01-/x7f]|[/xc2-/xdf][/x80-/xbf]|[/xe0-/xef][/x80-/xbf]{2}|[/xf0-/xff][/x80-/xbf]{3}/";  $re['gb2312'] = "/[/x01-/x7f]|[/xb0-/xf7][/xa0-/xfe]/";  $re['gbk']  = "/[/x01-/x7f]|[/x81-/xfe][/x40-/xfe]/";  $re['big5']  = "/[/x01-/x7f]|[/x81-/xfe]([/x40-/x7e]|/xa1-/xfe])/";  preg_match_all($re[$charset], $str, $match);  $slice = join("",array_slice($match[0], $start, $length));  if($suffix) return $slice."…";  return $slice;}

php技术ThinkPHP的截取字符串函数无法显示省略号的解决方法,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。