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 相关文章推荐
COM in PHP (winows only)
Oct 09 PHP
一个比较简单的PHP 分页分组类
Dec 10 PHP
php-cli简介(不会Shell语言一样用Shell)
Jun 03 PHP
深入php多态的实现详解
Jun 09 PHP
PHP return语句另类用法不止是在函数中
Sep 17 PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 PHP
WIN8.1下搭建PHP5.6环境
Apr 29 PHP
php图像处理类实例
Jul 28 PHP
php+redis消息队列实现抢购功能
Feb 08 PHP
PHP使用CURL实现下载文件功能示例
Jun 03 PHP
tp5框架前台无限极导航菜单类实现方法分析
Mar 29 PHP
Git命令之分支详解
Mar 02 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中文字符截取防乱码
2008/03/28 PHP
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
CI框架使用composer安装的依赖包步骤与方法分析
2016/11/21 PHP
总结一些js自定义的函数
2006/08/05 Javascript
用jquery实现等比例缩放图片效果插件
2010/07/24 Javascript
jQuery对于显示和隐藏等常用状态的判断方法
2014/12/13 Javascript
详解Javascript模板引擎mustache.js
2016/01/20 Javascript
基于javascript实现动态时钟效果
2020/08/18 Javascript
细数JavaScript 一个等号,两个等号,三个等号的区别
2016/10/09 Javascript
jQuery 添加样式属性的优先级别方法(推荐)
2017/06/08 jQuery
vue子父组件通信的实现代码
2017/07/09 Javascript
js移动端事件基础及常用事件库详解
2017/08/15 Javascript
vue-router判断页面未登录自动跳转到登录页的方法示例
2018/11/04 Javascript
vue+element UI实现树形表格带复选框的示例代码
2019/04/16 Javascript
jquery插件懒加载的示例
2020/10/24 jQuery
JavaScript实现轮播图效果
2020/10/30 Javascript
python先序遍历二叉树问题
2017/11/10 Python
pip matplotlib报错equired packages can not be built解决
2018/01/06 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
2018/03/15 Python
Python高级编程之消息队列(Queue)与进程池(Pool)实例详解
2019/11/01 Python
tensorflow之获取tensor的shape作为max_pool的ksize实例
2020/01/04 Python
PyCharm第一次安装及使用教程
2020/01/08 Python
python判断两个序列的成员是否一样的实例代码
2020/03/01 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
2020/06/24 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
Urban Outfitters德国官网:美国跨国生活方式零售公司
2018/05/21 全球购物
银行爱岗敬业演讲稿
2014/05/05 职场文书
房产授权委托书范本
2014/09/22 职场文书
安全生产标语大全
2014/10/06 职场文书
2015大学生实训报告
2014/11/05 职场文书
市场营销计划书
2015/01/17 职场文书
教师党员承诺书2015
2015/01/21 职场文书
岳庙导游词
2015/02/04 职场文书
质量负责人岗位职责
2015/02/15 职场文书
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js