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 相关文章推荐
多重?l件?合查?(二)
Oct 09 PHP
phpMyAdmin 安装及问题总结
May 28 PHP
php实现网站插件机制的方法
Nov 10 PHP
PHP 抓取网页图片并且另存为的实现代码
Mar 24 PHP
php学习笔记 面向对象的构造与析构方法
Jun 13 PHP
深入php处理整数函数的详解
Jun 09 PHP
ThinkPHP验证码使用简明教程
Mar 05 PHP
php顺序查找和二分查找示例
Mar 27 PHP
PHP获取一段文本显示点阵宽度和高度的方法
Mar 12 PHP
php通过array_shift()函数移除数组第一个元素的方法
Mar 18 PHP
PHP 模拟登陆功能实例详解
Sep 10 PHP
PHP设计模式概论【概念、分类、原则等】
May 01 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 session应用实例 登录验证
2009/03/16 PHP
十个PHP高级应用技巧果断收藏
2015/09/25 PHP
从性能方面考虑PHP下载远程文件的3种方法
2015/12/29 PHP
jquery 简单导航实现代码
2009/09/11 Javascript
一个基于jquery的文本框记数器
2012/09/19 Javascript
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
javascript中typeof的使用示例
2013/12/19 Javascript
Jquery promise实现一张一张加载图片
2015/11/13 Javascript
你不知道的高性能JAVASCRIPT
2016/01/18 Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
2016/01/25 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
jQuery获取同级元素的简单代码
2016/07/09 Javascript
Vue.js实现拖放效果的实例
2016/09/30 Javascript
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
利用js的闭包原理做对象封装及调用方法
2017/04/07 Javascript
JQuery EasyUI的一些常用组件
2017/07/12 jQuery
百度地图去掉marker覆盖物或者去掉maker的label文字方法
2018/01/26 Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
2018/06/24 Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
2019/01/03 Javascript
一文搞懂ES6中的Map和Set
2019/05/20 Javascript
python实现将excel文件转化成CSV格式
2018/03/22 Python
PyQt5每天必学之关闭窗口
2018/04/19 Python
Python使用sort和class实现的多级排序功能示例
2018/08/15 Python
Python自动创建Excel并获取内容
2020/09/16 Python
CSS3 选择器 属性选择器介绍
2012/01/21 HTML / CSS
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
家庭睡衣和家庭用品:Little Blue House
2018/03/18 全球购物
无刑事犯罪记录证明范本
2014/09/29 职场文书
个人查摆剖析材料
2014/10/04 职场文书
迁户口计划生育证明
2014/10/19 职场文书
经理岗位职责范本
2015/04/15 职场文书
个人廉政承诺书
2015/04/28 职场文书
jquery插件实现悬浮的菜单
2021/04/24 jQuery
Python中Schedule模块使用详解 周期任务神器
2022/04/19 Python
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS