THINKPHP截取中文字符串函数实例代码


Posted in PHP onMarch 20, 2017

在项目开发中,我们常常会遇到英文、中文等字符串截取问题,比如说新闻列表页面需要新闻内容简介,这就要用到字符串截取了。

下面就为大家分享一个THINKPHP中已经准备好的字符串截取函数。

# 函数解释:
msubstr($str, $start=0, $length, $charset=”utf-8″, $suffix=true)
/*
$str:要截取的字符串
$start=0:开始位置,默认从0开始
$length:截取长度
$charset=”utf-8″:字符编码,默认UTF-8
$suffix=true:是否在截取后的字符后面显示省略号,默认true显示,false为不显示
*/

模版使用:

{$vo.title|msubstr=0,5,'utf-8',false}

Ps:若是核心版的可能不存在该函数,不用怕,逐风把代码给大家贴出来:

function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true) 
{ 
 if(function_exists("mb_substr")){ 
 if($suffix) 
  return mb_substr($str, $start, $length, $charset)."..."; 
 else
  return mb_substr($str, $start, $length, $charset); 
 } 
 elseif(function_exists('iconv_substr')) { 
 if($suffix) 
  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;
}

以上所述是小编给大家介绍的THINKPHP截取中文字符串函数实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
apache+mysql+php+ssl服务器之完全安装攻略
Sep 05 PHP
php 函数使用方法与函数定义方法
May 09 PHP
PHP实现的封装验证码类详解
Jun 18 PHP
ThinkPHP学习笔记(一)ThinkPHP部署
Jun 22 PHP
php判断类是否存在函数class_exists用法分析
Nov 14 PHP
php实现仿写CodeIgniter的购物车类
Jul 29 PHP
Laravel使用Caching缓存数据减轻数据库查询压力的方法
Mar 15 PHP
PHP查询附近的人及其距离的实现方法
May 11 PHP
php 类中的常量、静态属性、非静态属性的区别
Apr 09 PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
Sep 13 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
PHP7.0连接DB操作实例分析【基于mysqli】
Sep 26 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
Mar 19 #PHP
php中通过eval实现字符串格式的计算公式
Mar 18 #PHP
CodeIgniter框架验证码类库文件与用法示例
Mar 18 #PHP
YII框架批量插入数据的方法
Mar 18 #PHP
thinkPHP5.0框架URL访问方法详解
Mar 18 #PHP
thinkPHP5.0框架模块设计详解
Mar 18 #PHP
thinkPHP5.0框架命名空间详解
Mar 18 #PHP
You might like
php操作excel文件 基于phpexcel
2010/07/02 PHP
PHP CLI模式下的多进程应用分析
2013/06/03 PHP
浅析PHP微信支付通知的处理方式
2014/05/25 PHP
百度地图API应用之获取用户的具体位置
2014/06/10 PHP
php模拟登陆的实现方法分析
2015/01/09 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
在javascript中执行任意html代码的方法示例解读
2013/12/25 Javascript
构造函数+原型模式构造js自定义对象(最通用)
2014/05/12 Javascript
cocos2dx骨骼动画Armature源码剖析(三)
2015/09/08 Javascript
JQuery的attr 与 val区别
2016/06/12 Javascript
jQuery实现点击查看大图并以弹框的形式居中
2016/08/08 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
在Vue项目中使用d3.js的实例代码
2018/05/01 Javascript
10分钟学会js处理json的常用方法
2020/12/06 Javascript
[34:47]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第一场 11.18
2020/11/18 DOTA
python3编写C/S网络程序实例教程
2014/08/25 Python
Python中%是什么意思?python中百分号如何使用?
2018/03/20 Python
PyQt5每天必学之单行文本框
2018/04/19 Python
Python使用分布式锁的代码演示示例
2018/07/30 Python
Python数据报表之Excel操作模块用法分析
2019/03/11 Python
python中时间、日期、时间戳的转换的实现方法
2019/07/06 Python
200行python代码实现2048游戏
2019/07/17 Python
python实现引用其他路径包里面的模块
2020/03/09 Python
如何解决python多种版本冲突问题
2020/10/13 Python
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
Java语言程序设计测试题改错题部分
2014/07/22 面试题
平面网站制作专科生的自我评价分享
2013/12/11 职场文书
本科毕业生专业自荐书范文
2014/02/05 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
社区植树节活动总结
2015/02/06 职场文书
文言文辞职信
2015/02/28 职场文书
工程资料员岗位职责
2015/04/13 职场文书
婚宴致辞
2015/07/28 职场文书
基于Python实现的购物商城管理系统
2021/04/27 Python
教你如何用cmd快速登录服务器
2022/06/10 Servers