1、substr_replace()截取

substr_replace(string,replacement,start,length

代码:

$str = '赵钱孙李,周吴郑王。冯陈褚卫,蒋沈韩杨。朱秦尤许,何吕施张。孔曹严华,金魏陶姜。戚谢邹喻,柏水窦章。云苏潘葛,奚范彭郎。鲁韦昌马,苗凤花方。';//从第二十位开始替换
$result = substr_replace($str,'......', 20);echo $result;

结果(如下所见,会出现乱码,所有要用第二种方法):

 2、mb_substr()截取可以避免乱码

         mb_substr( $str, $start, $length, $encoding )
         $str,需要截断的字符串
         $start,截断开始处
         $length,长度
         $encoding,编码,我设为 utf-8

代码:

$str = '赵钱孙李,周吴郑王。冯陈褚卫,蒋沈韩杨。朱秦尤许,何吕施张。孔曹严华,金魏陶姜。戚谢邹喻,柏水窦章。云苏潘葛,奚范彭郎。鲁韦昌马,苗凤花方。';//截取字符串的前20个字
$result = mb_substr($str,0,20,'UTF-8').'......';
echo $result;

结果:

对比后,我发现substr_replace()截取是按字节截取的(中文与英文二者占用的字节是不同的)。

mb_substr()截取是按字符截取的(中文与英文在这里都是一个字符);

php截取中文字符串不乱码相关推荐

  1. php截取中文字符串时乱码问题

    <?phpfunction chinesesubstr($str,$start,$len) { //$str指字符串,$start指字符串的起始位置,$len指字符串长度$strlen=$sta ...

  2. php 中文字符串截取无乱码,php实现中文字符串无乱码截取

    在PHP开发中会经常用到字符串截取,有的时候字符串截取会出现乱码的情况,那么怎么解决这个问题呢,其实也很容易 首先我们要了解关于中英文占多少字节的问题. ASCII码:一个中文汉字占两个字节的空间. ...

  3. php怎麼讲$字段的值截取第一个字,PHP截取中文字符串方法总结

    程序一:PHP截取中文字符串方法 由于网站首页以及vTigerCRM里经常在截取中文字符串时出现乱码(使用substr),今天找到一个比较好的截取中文字符串方法,在此与大家共享. Copy to Cl ...

  4. PHP截取中文字符串的方法

    2019独角兽企业重金招聘Python工程师标准>>> PHP截取中文字符串方法总结. 程序一:PHP截取中文字符串方法 由于网站首页以及vTigerCRM里经常在截取中文字符串时出 ...

  5. php针对中文的字符串函数,php截取中文字符串函数实例_php技巧

    本文实例讲述了php截取中文字符串函数.分享给大家供大家参考.具体实现方法如下: 代码如下: //中文字符串截取 function substr_zh($string,$sublen,$start=0 ...

  6. QT5对话框的中文字符串【乱码】 (error: C2001: 常量中有换行符)

    问题解决:对话框的中文字符串[乱码] (error: C2001: 常量中有换行符) 假设编译环境:QT5+vs2015 项目配置: 默认编码:UTF-8 UTF-8 BOM: 目前存在了则保留 如果 ...

  7. 中文字符串函数php,php截取中文字符串函数实例,_PHP教程

    php截取中文字符串函数实例, 本文实例讲述了php截取中文字符串函数.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: //中文字符串截取 function substr_zh($st ...

  8. php截取字符串函数 左右,php截取中文字符串函数的技巧

    这篇文章主要介绍了php截取中文字符串函数,实例分析了php针对中文字符串操作的技巧,注意utf-8与gb2312编码的转换问题,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了php截取中 ...

  9. php+中午截取,php中截取中文字符串的代码小结

    字符串截取是一个非常常见的编程任务,而往往带中文的字符串截取会经常用到.虽然不难,但是自己写函数实现又耗费时间,这里介绍一个比较好用的字符串截取函数,能够胜任基本的需求了. 1. 截取GB2312中文 ...

最新文章

  1. 图像语义分割之FCN和CRF
  2. lucene.net 应用资料
  3. 服务器的硬盘功率,【群晖 DS916 NAS网络存储服务器使用体验】硬盘|系统|功耗_摘要频道_什么值得买...
  4. Pinyin4j中文字符和拼音之间的转换
  5. clickhouse的常见问题以及和mysql相关特性对比
  6. android平台代号、版本、API 级别和 NDK 版本
  7. Day27:threading模块
  8. 编程课课程感想和建议_最佳在线编程课程
  9. 交互设计沉思录:顶尖设计专家Jon Kolko的经验与心得(原书第2版)
  10. Linux 查看日志命令
  11. 干货!推荐系统中的异构关系学习
  12. 您的Android版本不兼容,android – “你的设备与此版本不兼容”
  13. UltraISO刻录系统光盘或刻录U启系统
  14. 转:数据之美:迄今 10 佳数据可视化示例
  15. Android源码编译及替换成自己编译的linux内核
  16. 项目管理:确定目标有哪些作用?
  17. caffe实现多label输入(修改源码版)
  18. 体验 Chrome 开发者工具的 12个骚操作!
  19. swift使用相机拍照
  20. 【字符串】PTA试题——敲笨钟(20分)

热门文章

  1. 2019信用卡新规定,可能影响你一整年!
  2. 华信IT教育201611第一篇博客
  3. java毕业设计快递代取(附源码、数据库)
  4. 3D打印机在医学方面有哪些用途?3D打印可以定制矫形器吗?
  5. JQuery获取form表单数据
  6. 2020年NLP所有领域最新、经典、顶会、必读论文
  7. 腾讯、百度、网易游戏、华为Offer及笔经面经(转)
  8. Epox 主板故障代码:FF
  9. Oracle 12C RAC关闭MGMT
  10. 写出高性能的javascript代码