php还原16进制特殊字符
特殊字符的16进制表:https://websitebuilders.com/tools/html-codes/ascii/


可以通过 hexdec() 和 chr()方法来进行转换,
例子:
<?xml version=\x221.0\x22 encoding=\x22utf-8\x22?>\x0A<order id=\x22test\x22 affiliate=\x22main\x22 event_id=\x221\x22 ref=\x22TPCYA\x22 alias=\x22\x22/>
其中 \x22 就是双引号 ",而 \x0A 就是换号 \n,通过一些方法转换后:
$str = "<?xml version=\x221.0\x22 encoding=\x22utf-8\x22?>\x0A<order id=\x22test\x22 affiliate=\x22main\x22 event_id=\x221\x22 ref=\x22TPCYA\x22 alias=\x22\x22/>";
function hexdec_string($content) {
preg_replace_callback(
"(\\\\x([0-9a-f]{2}))i",
function($matches) {return chr(hexdec($matches[1]));},
// $string
$content
);
return $content;
}
echo htmlspecialchars(hexdec_string($str), ENT_QUOTES); //将 xml的内容作为纯文本输出
结果:
<?xml version="1.0" encoding="utf-8"?> <order id="test" affiliate="main" event_id="1" ref="TPCYA" alias=""/>
参考:https://stackoverflow.com/questions/12238657/decoding-javascript-escape-sequences-in-php-x27-x22-etc
http://php.net/manual/en/function.preg-replace-callback.php
php还原16进制特殊字符的更多相关文章
- C#将文件转成16进制码流写入数据库存起来,访问的时候再还原成PDF文件。
转自https://blog.csdn.net/liubowei_0312/article/details/53378146 适合将文件写入数据库,远程访问的时候还原1.首先把文件转成十六进制文件流 ...
- pyserial 16进制显示与发送
pyserial 16进制显示与发送 http://www.centoscn.com/python/2013/0817/1320.html 十六进制显示的实质是把接收到的字符诸葛转换成其对应的ASCI ...
- AES加密 16进制与二进制转换
import java.security.Key; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax ...
- java 16进制与字符串直接相互转换
java 16进制与字符串直接相互转换 CreationTime--2018年7月12日09点39分 Author:Marydon 1.16进制转换成字符串 /** * 16进制直接转换成为字符串 ...
- Android选择/拍照 剪裁 base64/16进制/byte上传图片+PHP接收图片
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/65633129认为博文实用,请点赞,请评论,请关注.谢谢! ~ 老规矩,先上GIF动态图 ...
- iOS开发时间戳与时间NSDate,时区的转换,汉字与UTF8,16进制的转换
http://blog.sina.com.cn/s/blog_68661bd80101njdo.html 标签: ios时间戳 ios开发时间戳 ios16进制转中文 ios开发utf8转中文 ios ...
- Ascii码 、16进制与 char
对于一个非计算机专业出身的人,以前只知道计算机中所有的数据都是以二进制形式进行存储,计算,通信的.但是人类文明中,主要的信息展现以文本的形式展现的.如果使用内存中的0和1来表示文本一直 ...
- 16进制ascii码转化为对应的字符,付ipmitool查询硬件信息
最近工作需要在用ipmitool查询服务器硬件信息.ipmitool查询硬件信息 比如电源,使用命令: 获取PSU0信息:Ipmitool raw 0x3a 0x71 0x00: 获取PSU1信息:I ...
- iOS根据16进制的色号来设置颜色,适合封装工具类
iOS中有时候UI给的一个色号就像 #54e1b7 这个,而我们一般设置颜色都是根据RBG来设置的,所以这里需要把这个16进制的色号转为RGB值,这里我们就使用一下的方法来调用设置颜色. + (UIC ...
随机推荐
- spring之jdbcTemplate
spring的另一个功能模块data access对于数据库的支持 spring data access第一个helloword案例: 使用java程序实现访问配置 1.导包 2.测试案例 @Test ...
- java基础-day29
第06天 MySQL数据库 今日内容介绍 u MySQL单表查询 u SQL约束 u 多表操作 第1章 MySQL单表查询 1.1 SQL单表查询--排序 1.1.1 排序格式 通过order ...
- 区间DP石子合并问题 & 四边形不等式优化
入门区间DP,第一个问题就是线性的规模小的石子合并问题 dp数组的含义是第i堆到第j堆进行合并的最优值 就是说dp[i][j]可以由dp[i][k]和dp[k+1][j]转移过来 状态转移方程 dp[ ...
- C - Roll-call in Woop Woop High
Description The new principal of Woop Woop High is not satisfied with her pupils performance. She in ...
- EBS Custom Password Rules
https://blogs.oracle.com/manojmadhusoodanan/entry/custom_password_rules Custom Password Rules By Man ...
- ue4开发入门教程
ue4是一套开源跨平台的游戏引擎,游戏画质3A水准,具有强大的材质编辑器,各种插件齐全.想要学习ue4的,可以参考这篇文章作为入门. 学习这篇文章,建议具有一定的C++基础,对游戏有一定了解. 1.首 ...
- Spring Cloud实践之服务注册与发现Eureka
一.简述: 服务提供者producer与服务消费者consumer都注册到eureka server,然后服务consumer在其应用内直接调用producer的服务名来调用服务,而不是像之前一样调用 ...
- [Element-UI] 使用Element-UI的DateTimePicker组件报错:Cannot read property 'getHours' of undefined
使用Element-UI组件的DateTimePicker,如下: <template> <div class="block"> <span clas ...
- Swift5 语言指南(二十四) 泛型
通用代码使您能够根据您定义的要求编写可以使用任何类型的灵活,可重用的函数和类型.您可以编写避免重复的代码,并以清晰,抽象的方式表达其意图. 泛型是Swift最强大的功能之一,Swift标准库的大部分内 ...
- <compilation debug="true" targetFramework="4.5"> 报错解决方案
在 VS2013 下开发的 MVC4 网站,基于 .net 4.5,服务器是一台 Windows 2008 R2,运行的时候就报错了 The 'targetFramework' attribute i ...