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 相关文章推荐
建立文件交换功能的脚本(一)
Oct 09 PHP
解决CodeIgniter伪静态失效
Jun 09 PHP
CI框架在CLI下执行占用内存过大问题的解决方法
Jun 17 PHP
ThinkPHP CURD方法之field方法详解
Jun 18 PHP
PHP中模拟处理HTTP PUT请求的例子
Jul 22 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
Dec 15 PHP
WordPress中邮件的一些修改和自定义技巧
Dec 15 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
Dec 19 PHP
php微信开发接入
Aug 27 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
Feb 17 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
一文搞懂php的垃圾回收机制
Jun 18 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
一个程序下载的管理程序(三)
2006/10/09 PHP
php取整函数ceil,floo,round的用法及介绍
2013/08/31 PHP
PHP使用内置dir类实现目录遍历删除
2015/03/31 PHP
PHP使用array_merge重新排列数组下标的方法
2015/07/22 PHP
php+js实现裁剪任意形状图片
2018/10/31 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
不用ajax实现点击文字即可编辑的方法
2007/12/16 Javascript
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
JavaScript的document对象和window对象详解
2010/12/30 Javascript
JQuery魔力之$("tagName")与selector
2012/03/05 Javascript
JavaScript输出当前时间Unix时间戳的方法
2015/04/06 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
微信小程序(应用号)开发新闻客户端实例
2016/10/24 Javascript
解决Window10系统下Node安装报错的问题分析
2016/12/13 Javascript
AngularJs+Bootstrap实现漂亮的计算器
2017/08/10 Javascript
解决vue打包之后静态资源图片失效的问题
2018/02/21 Javascript
Koa日志中间件封装开发详解
2019/03/09 Javascript
layui表单验证select下拉框实现验证的方法
2019/09/05 Javascript
Python中的字符串类型基本知识学习教程
2016/02/04 Python
pip matplotlib报错equired packages can not be built解决
2018/01/06 Python
使用python爬虫获取黄金价格的核心代码
2018/06/13 Python
Python实现动态添加属性和方法操作示例
2018/07/25 Python
python如何实现数据的线性拟合
2019/07/19 Python
如何用OpenCV -python3实现视频物体追踪
2019/12/04 Python
Python使用tkinter实现小时钟效果
2021/02/22 Python
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
介绍一下.net和Java的特点和区别
2012/09/26 面试题
幼儿园家长会欢迎词
2014/01/09 职场文书
新学期开学寄语
2014/01/18 职场文书
乡镇庆八一活动方案
2014/02/02 职场文书
学生请假条格式
2014/04/11 职场文书
党员民主评议个人总结
2014/10/20 职场文书
会计试用期工作总结2015
2015/05/28 职场文书
地道战观后感500字
2015/06/04 职场文书
“5.12”护士节主持词
2015/07/04 职场文书
在HTML中引入CSS的几种方式介绍
2021/12/06 HTML / CSS