先看以下代码

var_dump(rtrim("互联网产品、", "、"));

我们以为会得到结果 "互联网产品", 但实际上获得的是 ""互联网产��"

为什么呢, 其实这是编码引起的问题.

rtrim()

这个函数在处理字符时是按照ascii编码来处理, 先看一下 "互联网产品、"

的编码:

$str = "互联网产品、";

for ($i = 0; $i < strlen($str); $i++) {

echo decbin(ord($str[$i])) . PHP_EOL;

}

/* Output

11100100

10111010

10010010

11101000

10000001

10010100

11100111

10111101

10010001

11100100

10111010

10100111

11100101

10010011

10000001

11100011

10000000

10000001

*/

可以看出中文"品"的utf-8编码是 "11100101 10010011 10000001", 而中文符号 "、" 的utf-8编码是 "11100011 10000000 10000001"

因此 rtrim()

在处理时会一并将 "品" 截掉最后一个字节, 剩下 "11100101 10010011", 从而引起乱码的问题.

rtrim php,php rtrim() 格式化中文问题相关推荐

  1. python日期格式修改年月日_Python time模块格式化中文年月日

    大量教程中,对于time库的大部分函数都只是一笔带过,例如菜鸟教程中的介绍: 在实际开发过程中,往往遇到中文年月日的情况,找了很多教程.参考书后,才对这一点有一些门道,所以以随笔的形式上传上来,给各位 ...

  2. Oracle rtrim、to_char函数格式化数字 小数Format展示,FM999990D99

    两位小数解决方案:rtrim(to_char(ROUND(T.MANAGER_YIELD,4)*100, 'FM999990D99'), to_char(0, 'D')) 注:最后这个tochar(0 ...

  3. oracle rtrim(),Oracle ltrim() rtrim() 函数详细用法

    嘿嘿,今天在论坛里看了一篇帖子,讨论ltrim() 函数的详细用法,下面我借几个高手的回答总结一下: 先看几个实例: SQL> select ltrim('109224323','109') f ...

  4. oracle常用函数之trim( )、ltrim( )、rtrim( )

    本文转载自:Oracle之trim( ).ltrim( ).rtrim( )三个函数的用法及陷阱_Velen_zou的博客-CSDN博客_oracle trim trim().ltrim().rtri ...

  5. 2 560.26 php,php rtrim的一个坑,很“二”的问题

    一.背景: 做项目的时候遇到一种情况,商家的营业时间显示的问题,设计图上要求显示成:"星期一,星期二,星期三,星期四,星期五,星期六,星期天" 换句话说,就是营业星期勾哪个就显示哪 ...

  6. Oracle之trim( )、ltrim( )、rtrim( )三个函数的用法及陷阱

    最近整理一份oracle常用函数清单的时候发现其经常用来去除字符串空格的三个函数,也就是trim().ltrim().rtrim(),看起来简简单单,其实大有玄机.以下见解来自网络,但内容经由博主撰写 ...

  7. 【转载】SQL 标量函数-----字符串函数 之二 去空格函数 LTRIM() 、RTRIM()

    在用ADO.NET时有时会遇到查询不到数据的状况,即使列属性设置为VARCHAR(N),也不能有效避免前后空格,所以要对查询数据做一定处理 去空格函数 1.LTRIM() 把字符串头部的空格去掉. 2 ...

  8. ORACLE字符串截取函数trim(),ltrim(),rtrim()

    1.TRIM([[LEADING||TRAILING||BOTH] c2 FROM] c1). 看起来很复杂,理解起来很简单: (1)如果没有指定任何参数则oracle去除c1头尾空格 例如:SELE ...

  9. sql中rtrim的用法

    以下是OCP教材中对该函数的描述 RTRIM(<c1>,<c2> ) takes two arguments, where c1 and c2 are character st ...

最新文章

  1. Android中实现震动的方法
  2. java的函数传值_java 函数形参传值和传引用的区别[转]
  3. css中定义超级链接的样式
  4. vue 页面生成pdf并下载 vue页面转PDF
  5. 在nodejs中操作mongodb
  6. 【JavaWeb】XML和Jsoup的相关内容
  7. 八种常见的 SQL 错误用法
  8. 除了ssh外也可以开启telnet服务连接服务器
  9. SAP HANA数据库安装
  10. Android 功耗优化(3)---Android后台调度与省电
  11. VC++ COleSafeArray VARIANT的使用
  12. clearinterval函数不生效_excel有没有一种技巧或函数让你相见恨晚,如果没有请看这篇文章...
  13. 2022年CCNA面试题库和答案
  14. 银行卡四要素验证API接口用法简介
  15. 【自动化测试selenium】
  16. HAL库与标准库的理解
  17. 2021年如何选购华强北AirPods(一次翻车到下车的经历总结的经验)
  18. 核显 linux 软件,同样的核显,看在线视频ubuntu更卡 - Linux系统与应用 - LinuxApp - 水木社区...
  19. 小程序webview嵌入h5兼容iphone安全区域
  20. 项目开发 | 转载 | 需求评审与技术评审

热门文章

  1. 用python画三维图、某区域的高程,python - 在PyQt中绘制具有高程和降低效果的3D矩形/多边形 - SO中文参考 - www.soinside.com...
  2. 如何根据进程号去查端口号?
  3. java io 文件路径_【IO流】java中文件路径(相对路径、绝对路径)相关类及方法...
  4. vs点击方法跳不到对于的地方_内脏脂肪怎么测?这个方法也太方便了!| EASD 2020...
  5. Mac AndroidStudio常用快捷键
  6. php数组在golang,go语言数据类型-数组(array)
  7. 打印两个有序链表的公共部分~~
  8. jsfor循环终止_js 终止 forEach 循环
  9. python常用的库有哪些餐厅_这十个Python常用库,学习Python的你必须要知道!
  10. mysql mybatis 工具类_我肝了一个星期,为你们整理出了mybatis程序配置教程