rtrim php,php rtrim() 格式化中文问题

先看以下代码

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", 从而引起乱码的问题.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/566290.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java gbk汉字 10进制,用java程序将GBK字符转成UTF-8编码格式

UTF-8 采用变长度字节来表示字符&#xff0c;理论上最多可以到 6 个字节长度(一个字符六个字节)。UTF-8 编码兼容了 ASC II(0-127)&#xff0c; 也就是说 UTF-8 对于 ASC II 字符的编码是和 ASC II 一样的。对于超过一个字节长度的字符&#xff0c;才用以下编码规范&#xff1a…

我的世界java版刷雪球机,我的世界手机版怎么刷雪球 无限刷雪球机

随着全球变暖&#xff0c;厄尔尼诺现象加剧&#xff0c;一些生活在亚热带的孩子越来越感受不到下雪的喜悦&#xff0c;雪场的票子也是难求&#xff01;不过不要着急&#xff0c;Minecraft给你模拟了一个生存的环境&#xff0c;在这里&#xff0c;你可以和好友联机打雪仗&#x…

php请求api获取返回值,我用curl请求接口获取返回值,但是不成功,大神给看看怎么调取?...

接口地址 http://mp.vservice.com.cn/service/OutWebService?wsdl接口调用方callService(String serviceName,String servId,String secretKey,String xmlInfo)参数名称 传值serviceName&#xff1a;OAuthservId &#xff1a;服务号idsecretKey &#xff1a;服务号秘钥xmlInfo…

对于单输入多输出系统matlab,求助!!如何把多输入多输出系统的传函转换为状态空间表达式?...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼这个对应的是单输入单输出的。多输入多输出的如下&#xff1a;% Thansfer multiple transfer functions into sate space modelsclcclear all;% Step1&#xff1a;输入传递函数分子分母系数%From u1 to y1num1[-0.0006086 -7.715e-…

matlab的fftn,matlab fftn

(X,m,n) fftn 进行 n 维快速傅立叶变换(反变换用 ifftn) 语法:Yffn(X) \\ Yfftn(X,siz) fftshift 快速傅立叶变换的 DC 组件移到光谱中心 语法:......(X,m,n) fftn 进行 n 维快速傅立叶变换(反变换用 ifftn) 语法:Yffn(X) \\ Yfftn(X,siz) fftshift 快速傅立叶变换的 DC 组件移…

php catch e是什么,php try catch 中的catch(Exception $e) 中的Exception 有什么作用?

首先很明确的是 try ... catch ... 是一个语言结构。那既然如此就不能用函数参数类型限定的方式去理解 catch 后面的括号里的 Exception 了。如果这里没有 Exception&#xff0c;比如这样写&#xff1a;try {} catch ($e) {}你会得到一个错误&#xff1a;Parse error: parse er…

java udp 心跳,udp简略通讯示例-心跳示例

当前位置:我的异常网 软件架构设计 udp简略通讯示例-心跳示例udp简略通讯示例-心跳示例www.myexceptions.net 网友分享于&#xff1a;2013-09-04 浏览&#xff1a;44次udp简单通讯示例---心跳示例//发送心跳new UDPToPointCenter(18056).start();public class UDPToPointCen…

php如何随机显示图片,php中随机显示图片的函数代码_php

/*********************************************** Filename : img.php* Author : freemousehttp://www.gaodaima.com/?p49284php中随机显示图片的函数代码_php* web : www.cnphp.info* email :freemouse1981gmail.com* Date : 2010/12/27* Usage:* * **********************…

php数组里面写路径,使用路径在PHP数组中进行递归搜索

我会尝试清理一下,但这有效&#xff1a;$needle ["chapter one", foo, bar];$array [["name" > "Intro","id" > "123","children" > ["name" > "foo","id" > &qu…

matlab时域分析论文,基于Matlab语言的数字信号时域相关性研究与分析.doc

摘要&#xff1a;针对在工程测试信号处理过程中广泛存在的信号之间的相关性问题&#xff0c;本文将研究和分析信号之间不同形式的相关关系以及信号在时域中的相关性。从而揭示了信号间关联程度的内在规律。通过举出实例来展示信号相关分析技术在实际工程中的具体应用。最后通过…

php 图片 byte数组,php – 将图像存储在PostgreSQL数据库的bytea字段中

TL; DR&#xff1a;删除addslashes($data).这里多余.双重逃避..两次$datafread($p,filesize($fi));$dataaddslashes($data);$dat pg_escape_bytea($data);您读取数据,将其转义为字符串文字,然后将其转换为bytea八进制或十六进制转义.即使pg_escape_bytea是理智的,它也不会那样,…

页面显示其他php,php – 分页在所有其他页面上显示来自第1页的相同帖子

终于解决了这个&#xff1a;function my_filter_where( $where ) {global $wp_query;if (is_array($wp_query->query_vars[post_status])) {if (in_array(future,$wp_query->query_vars[post_status])) {// posts today into the future$where . " AND post_date …

oracle格式化列宽度,ORACLE日期时间的格式化参数大全

经常遇到有朋友问询关于日期时间格式化的问题(或可以通过格式化轻易解决)&#xff0c;经过参考Oracle SQL Reference官方文档&#xff0c;并附上详细的应用示例综合成文&#xff0c;希望能够对大家学习和使用有所帮助。本篇可视为"oracle著名及非著名函数介绍"的补充…

oracle 8i漏洞渗透,一次通过Oracle8i入侵系统之旅(组图)

最近看了些有关Oracle的安全资料,看后随手做了一个渗透测试,把过程记录下来方便日后查阅.先用SuperScan4.0扫描下要测试的主机,速度很快,结果如图1所示:图 1端口 1521 是 Oracle 的 TNS Listener 默认监听的端口,通过扫描报告还可以看到Oracle的版本为8i.现在还不知道对方的操作…

linux系统安装serv u,建立第一个可用的FTP服务器

二、建立第一个可用的FTP服务器1、比如本机IP地址为“192.168.0.48”&#xff0c;已建立好域名“ftp.bbc.com”的相关DNS记录。2、打开Serv-U管理器。选上图的“Serv-U Administrator”&#xff0c;即出现“Setup Wizard”(设置向导)。此向导可以帮你轻松地完成基本设置&#x…

mat 内存分析 Linux,JVM内存分析工具MAT使用简介

# Memory Analyzer使用简介markdown格式渲染异常请阅读附件。- [Memory Analyzer使用简介](#memory-analyzer使用简介)- [MAT 简介](#mat-简介)- [安装](#安装)- [图形界面使用方式](#图形界面使用方式)- [命令行使用方式](#命令行使用方式)- [线程dump](#线程dump)- [堆dump](…

Linux配置scheme环境,用 Xcode Configuration 和 Scheme 配置项目环境

8种机械键盘轴体对比本人程序员&#xff0c;要买一个写代码的键盘&#xff0c;请问红轴和茶轴怎么选&#xff1f;想象一个场景&#xff0c;我们正在开发一款支付系统&#xff0c;这个支付系统同时支持有Web版和原生的iOS APP版本。这个支付系统有三个环境&#xff1a;dev: 调用…

linux进入字符界面编程,MPlayer字符界面操作方法

一、启动播放时参数&#xff1a;在终端下敲入&#xff1a;./mplayer 提示各种使用帮助信息-vo 选择视频输出模式和设备(用-vo help查看列表)-ao 选择音频输出模式和设备(用-ao help查看列表)-ss 寻找指定的(多少秒或hh:mm:ss)位置-nosound 不播放声音-fs -vm -zoom …

linux怎么删web应用程序错误,Ubuntu 20.04将删除Amazon Web应用程序,但用户可另行安装...

Ubuntu 20.04将删除Amazon Web应用程序&#xff0c;原因就是这款应用很少有用户使用&#xff0c;但需要的用户也可另行安装。在过去的8年中&#xff0c;Amazon Web应用程序已成为Ubuntu桌面的一部分&#xff0c;现在&#xff0c;Ubuntu 20.04已决定退出。亚马逊网络启动器是在U…

linux 双网卡 debian,Debian 双网卡bond

1. 安装ifenslaveifenslave的作用是网卡的负载均衡# apt-get install ifenslave2. 修改/etc/network/interface复制代码代码如下:{rootb01 359 ~}# cat /etc/network/interfaces# This file describes the network interfaces available on your system# and how to activate t…