php 截取utf-8格式的字符串实例代码


Posted in PHP onOctober 30, 2016

php 截取utf-8格式的字符串

php中,我们经常需要截取字符串。英文字符占用一个字节,中文字符占用两个字节,但中文字符占用两个字节是相对于GBK编码而言但是在时下国际流行的UTF8编码中,一个中文字符占用3个字节。本文章向大家介绍一个php 截取utf-8格式字符串的函数。

举例说明:

function truncate_utf8_string($string, $length, $etc = '...') {
 $result = '';
 $string = html_entity_decode ( trim ( strip_tags ( $string ) ), ENT_QUOTES, 'UTF-8' );
 $strlen = strlen ( $string );
 for($i = 0; (($i < $strlen) && ($length > 0)); $i ++) {
 if ($number = strpos ( str_pad ( decbin ( ord ( substr ( $string, $i, 1 ) ) ), 8, '0', STR_PAD_LEFT ), '0' )) {
  if ($length < 1.0) {
  break;
  }
  $result .= substr ( $string, $i, $number );
  $length -= 1.0;
  $i += $number - 1;
 } else {
  $result .= substr ( $string, $i, 1 );
  $length -= 0.5;
 }
 }
 $result = htmlspecialchars ( $result, ENT_QUOTES, 'UTF-8' );
 if ($i < $strlen) {
 $result .= $etc;
 }
 return $result;
}

如果需要截取utf-8格式的字符串,直接调用这个函数即可。

<?php
  $str="如果需要截取utf-8格式的字符串,直接调用这个函数即可。";
  echo truncate_utf8_string($str,10);//输出结果:如果需要截取utf-8格...
?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
在PHP3中实现SESSION的功能(一)
Oct 09 PHP
随时给自己贴的图片加文字的php水印
Mar 16 PHP
防止MySQL注入或HTML表单滥用的PHP程序
Jan 21 PHP
php feof用来识别文件末尾字符的方法
Aug 01 PHP
hessian 在PHP中的使用介绍
Dec 13 PHP
初品cakephp 入门基础
Feb 16 PHP
php动态实现表格跨行跨列实现代码
Nov 06 PHP
php按百分比生成缩略图的代码分享
May 10 PHP
php实现的常见排序算法汇总
Sep 08 PHP
Smarty日期时间操作方法示例
Nov 15 PHP
PHP基于Closure类创建匿名函数的方法详解
Aug 17 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
Mar 01 PHP
php mysql like 实现多关键词搜索的方法
Oct 29 #PHP
PHP请求远程地址设置超时时间的解决方法
Oct 29 #PHP
浅谈php处理后端&amp;接口访问超时的解决方法
Oct 29 #PHP
完美解决phpexcel导出到xls文件出现乱码的问题
Oct 29 #PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
Oct 29 #PHP
浅谈PHP定义命令空间的几个注意点(推荐)
Oct 29 #PHP
php+mongodb判断坐标是否在指定多边形区域内的实例
Oct 28 #PHP
You might like
win7下memCache的安装过程(具体操作步骤)
2013/06/28 PHP
php fsockopen解决办法 php实现多线程
2014/01/20 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
2016/03/23 PHP
PHP使用正则表达式实现过滤非法字符串功能示例
2018/06/04 PHP
锋利的jQuery jQuery中的DOM操作
2010/03/21 Javascript
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
2010/12/02 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
jquery 判断滚动条到达了底部和顶端的方法
2014/04/02 Javascript
javascript针对不确定函数的执行方法
2015/12/16 Javascript
jQuery自制提示框tooltip改进版
2016/08/01 Javascript
JS实现物体带缓冲的间歇运动效果示例
2016/12/22 Javascript
nodeJS删除文件方法示例
2016/12/25 NodeJs
JS实现JSON.stringify的实例代码讲解
2017/02/07 Javascript
浅谈Node 调试工具入门教程
2018/03/20 Javascript
JS实现把一个页面层数据传递到另一个页面的两种方式
2018/08/13 Javascript
JS函数节流和防抖之间的区分和实现详解
2019/01/11 Javascript
微信公众平台获取access_token的方法步骤
2019/03/29 Javascript
Vue实现指令式动态追加小球动画组件的步骤
2020/12/18 Vue.js
浅谈python中的数字类型与处理工具
2017/08/02 Python
用Python进行简单图像识别(验证码)
2018/01/19 Python
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
2018/04/23 Python
Python定义一个跨越多行的字符串的多种方法小结
2018/07/19 Python
用xpath获取指定标签下的所有text的实例
2019/01/02 Python
Python判断两个文件是否相同与两个文本进行相同项筛选的方法
2019/03/01 Python
使用Html5、CSS实现文字阴影效果
2018/01/17 HTML / CSS
波兰灯具、照明和LED购物网站:Lampy.pl
2019/03/11 全球购物
新加坡第一大健康与美容零售商:屈臣氏新加坡(Watsons Singapore)
2020/12/11 全球购物
Jones Bootmaker官网:优质靴子和鞋子在线
2020/11/30 全球购物
女大学生个人求职信
2013/12/09 职场文书
《都江堰》教学反思
2014/02/07 职场文书
农村改厕实施方案
2014/03/22 职场文书
《路旁的橡树》教学反思
2014/04/07 职场文书
党员“一帮一”活动总结
2015/05/07 职场文书
励志语录:时光飞逝,请学会珍惜所有的人和事
2020/01/16 职场文书
Dubbo+zookeeper搭配分布式服务的过程详解
2022/04/03 Java/Android
Python函数对象与闭包函数
2022/04/13 Python