Joomla框架实现字符串截取的方法示例


Posted in PHP onJuly 18, 2017

本文实例讲述了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框架程序设计有所帮助。

PHP 相关文章推荐
PHP的FTP学习(一)
Oct 09 PHP
PHP利用REFERER根居访问来地址进行页面跳转
Sep 28 PHP
PHP中读取照片exif信息的方法
Aug 20 PHP
分享一段PHP制作的中文拼音首字母工具类
Dec 11 PHP
php ImageMagick windows下安装教程
Jan 26 PHP
ThinkPHP安装和设置
Jul 27 PHP
php+ajax无刷新上传图片实例代码
Nov 17 PHP
php中get_magic_quotes_gpc()函数说明
Feb 06 PHP
PHP递归实现文件夹的复制、删除、查看大小操作示例
Aug 11 PHP
php 算法之实现相对路径的实例
Oct 17 PHP
php利用云片网实现短信验证码功能的示例代码
Nov 18 PHP
php实现对短信验证码发送次数的限制实例讲解
Mar 04 PHP
PHP新特性详解之命名空间、性状与生成器
Jul 18 #PHP
PHP实现基于面向对象的mysqli扩展库增删改查操作工具类
Jul 18 #PHP
PHP基于XMLWriter操作xml的方法分析
Jul 17 #PHP
PHP基于DOMDocument解析和生成xml的方法分析
Jul 17 #PHP
PHP基于SimpleXML生成和解析xml的方法示例
Jul 17 #PHP
PHP实现限制IP访问及提交次数的方法详解
Jul 17 #PHP
PHP提取字符串中的手机号正则表达式怎么写
Jul 17 #PHP
You might like
example1.php
2006/10/09 PHP
PHP完整的日历类(CLASS)
2006/11/27 PHP
php中的一个中文字符串截取函数
2007/02/14 PHP
关于PHP堆栈与列队的学习
2013/06/21 PHP
PHP中使用BigMap实例
2015/03/30 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
PHPCMS V9 添加二级导航的思路详解
2016/10/20 PHP
javascript中使用replaceAll()函数实现字符替换的方法
2010/12/25 Javascript
JS解决ie6下png透明的方法实例
2013/08/02 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
2017/01/20 Javascript
微信小程序 基础知识css样式media标签
2017/02/15 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
javascript实现二叉树遍历的代码
2017/06/08 Javascript
vue.js组件之间传递数据的方法
2017/07/10 Javascript
Js利用Canvas实现图片压缩功能
2017/09/13 Javascript
js+html5生成自动排列对话框实例
2017/10/09 Javascript
jQuery实现模糊查询的方法分析
2018/05/10 jQuery
JavaScript栈和队列相关操作与实现方法详解
2018/12/07 Javascript
实例介绍JavaScript中多种组合继承
2019/01/20 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
Vue 中使用 typescript的方法详解
2020/02/17 Javascript
JS+CSS实现炫酷光感效果
2020/09/05 Javascript
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
django通过ajax发起请求返回JSON格式数据的方法
2015/06/04 Python
python web.py开发httpserver解决跨域问题实例解析
2018/02/12 Python
Python获取网段内ping通IP的方法
2019/01/31 Python
python爬虫增加访问量的方法
2019/08/22 Python
python如何使用socketserver模块实现并发聊天
2019/12/14 Python
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
会计电算化个人求职信范文
2014/01/24 职场文书
党员领导干部廉洁从政承诺书
2014/03/27 职场文书
法制宣传标语集锦
2014/06/25 职场文书
MySQL 外连接语法之 OUTER JOIN
2022/04/09 MySQL
Redis唯一ID生成器的实现
2022/07/07 Redis