Joomla框架实现字符串截取的方法示例
author:一佰互联 2019-04-25   click:171

本文实例讲述了Joomla框架实现字符串截取的方法。分享给大家供大家参考,具体如下:

在用joomla进行开发的时候,需要用到国外的资源,一些module,组件,插件之类的,但是我们会发现,在字符串这个方法都需要进行修改。因为PHP的substr方法只是针对于非中文字符串有效,所以要使用另外一种简便容易的方法mb_substr,这样就能轻松解决截取字符的问题。

同时如果需要针对中文,英文,中英文混合排列三种方式(标点符号除外)进行截取字符串,那么正则表达式就派上用场了,附上源码,仅供参考。

/*截取字符串方法*/
//$str字符串
//$number为最大长度
function cutStrTitle($str, $number){
  $str = strip_tags($str);
  $en=preg_match("/^[a-zA-Z]/", $str);//匹配英文字母
  $cn=preg_match_all("/([x{4e00}-x{9fa5}]){1}/u",$str,$arrc);//匹配汉字,统计个数,返回给$arrc
  if(mb_strlen($str,"UTF8")<= $number){//"UTF8"跟据字符串的格式调整
    return $str;
  }
  else{
    if($en)
    {
      if($cn){
        //中英文混合情况下
        return mb_substr($str,0,$number+2,"utf-8")."...";
      }
      else{
        //全为英文情况下
        return mb_substr($str,0,$number+4,"utf-8")."...";
      }
    }
    else {
      //全为中文情况下
      return mb_substr($str,0,$number,"utf-8")."...";
    }
  }
}

更多PHP框架相关内容感兴趣的读者可查看本站专题:《php优秀开发框架总结》、《ThinkPHP入门教程》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家PHP框架程序设计有所帮助。