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 相关文章推荐
php实现mysql数据库备份类
Mar 20 PHP
新手菜鸟必读:session与cookie的区别
Aug 22 PHP
php操作mysql数据库的基本类代码
Feb 25 PHP
PHP打开和关闭文件操作函数总结
Nov 18 PHP
php实现向javascript传递数组的方法
Jul 27 PHP
[原创]php常用字符串输出方法分析(echo,print,printf及sprintf)
Jul 09 PHP
thinkPHP分组后模板无法加载问题解决方法
Jul 12 PHP
PHP网页安全认证的实例详解
Sep 28 PHP
在Laravel5.6中使用Swoole的协程数据库查询
Jun 15 PHP
PHP实现的支付宝支付功能示例
Mar 26 PHP
laravel7学习之无限级分类的最新实现方法
Sep 30 PHP
php命令行模式代码实例详解
Feb 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
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
2009/04/24 PHP
PHP Class&Object -- 解析PHP实现二叉树
2013/06/25 PHP
php多维数组去掉重复值示例分享
2014/03/02 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
2014/12/17 PHP
Linux系统下php获得系统分区信息的方法
2015/03/30 PHP
PHP生成树的方法
2015/07/28 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
jQuery链式调用与show知识浅析
2016/05/11 Javascript
微信小程序 网络请求(GET请求)详解
2016/11/16 Javascript
Bootstrap3 图片(响应式图片&图片形状)
2017/01/04 Javascript
详解js的异步编程技术的方法
2017/02/09 Javascript
JavaScript ES6中export、import与export default的用法和区别
2017/03/14 Javascript
Chart.js 轻量级HTML5图表绘制工具库(知识整理)
2018/05/22 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
解决webpack多页面内存溢出的方法示例
2019/10/08 Javascript
原生js实现文件上传、下载、封装等实例方法
2020/01/05 Javascript
[51:43]OG vs LGD 2018国际邀请赛淘汰赛BO3 第五场 8.26
2018/08/30 DOTA
Python爬虫包 BeautifulSoup  递归抓取实例详解
2017/01/28 Python
Python基于列表list实现的CRUD操作功能示例
2018/01/05 Python
Python找出微信上删除你好友的人脚本写法
2018/11/01 Python
使用Django开发简单接口实现文章增删改查
2019/05/09 Python
Python之修改图片像素值的方法
2019/07/03 Python
用django设置session过期时间的方法解析
2019/08/05 Python
python使用PIL和matplotlib获取图片像素点并合并解析
2019/09/10 Python
Python中__repr__和__str__区别详解
2019/11/07 Python
python实现人机五子棋
2020/03/25 Python
夏威夷航空官网:Hawaiian Airlines
2016/09/11 全球购物
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
成龙洗发水广告词
2014/03/14 职场文书
乡镇干部先进性教育活动个人整改措施
2014/09/16 职场文书
房屋租赁合同协议书范本
2014/10/19 职场文书
暑期实践个人总结
2015/03/06 职场文书
年会主持人开场白台词
2015/05/29 职场文书
导游词之西江千户苗寨
2019/12/24 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python