php中html_entity_decode实现HTML实体转义


Posted in PHP onJune 13, 2018

最近遇到一个问题,数据中包含中文引号,结果被转义存储到数据库,取数据的时候用了htmlspecialchars_decode把实体转义回去,结果发现并没有生效,看了一下htmlspecialchars_decode只支持5个指定的实体转换,其他的[我遇到的是中文引号&ldrquo;]

因此发现了html_entity_decode可以把所有的实体转义回去~

另外,如果你在浏览器中测试,会发现是转义回去的,这是因为浏览器自动给处理了。实际上是没有转回去的,可以到命令行试试哦~~

html_entity_decode:把所有的html实体转换为原来的字符

与htmlentities() 相反

更准确地说,这个函数解码所有的实体(包括所有的数字实体):a)对于所选择的文档类型必须是有效的 - 即对于XML,这个函数不解码可能在某些DTD中定义的命名实体 - 以及b) 其中的字符或字符位于与所选编码相关联的编码字符集中并且在所选文档类型中被允许。 所有其他实体保持原样。

htmlspecialchars_decode:将特殊的 HTML 实体转换回普通字符

此函数的作用和 htmlspecialchars() 刚好相反。它将特殊的HTML实体转换回普通字符。

被转换的实体有: &, " (没有设置ENT_NOQUOTES 时), ' (设置了 ENT_QUOTES 时), < 以及>。

所以并不能把不包含在以上5个的其他转换回去。

实例

把 HTML 实体转换为字符:

<?php
$str = "<© W3CSçh°°¦§>";
echo html_entity_decode($str);
?>

上面代码的 HTML 输出如下(查看源代码):

<!DOCTYPE html>
<html>
<body>
<© W3CSçh°°¦§>
</body>
</html>

上面代码的浏览器输出如下:

<© W3CSçh°°¦§>

PHP 相关文章推荐
php中数据的批量导入(csv文件)
Oct 09 PHP
php连接mssql数据库的几种方法
Feb 21 PHP
分享下PHP register_globals 值为on与off的理解
Sep 26 PHP
Thinkphp搭建包括JS多语言的多语言项目实现方法
Nov 24 PHP
JSON字符串传到后台PHP处理问题的解决方法
Jun 05 PHP
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
Dec 14 PHP
cakephp常见知识点汇总
Feb 24 PHP
PHP实现的数组和XML文件相互转换功能示例
Mar 15 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
Dec 20 PHP
详解PHP神奇又有用的Trait
Mar 25 PHP
laravel 解决后端无法获取到前端Post过来的值问题
Oct 22 PHP
详解Laravel制作API接口
May 31 PHP
php处理多图上传压缩代码功能
Jun 13 #PHP
Laravel框架使用Seeder实现自动填充数据功能
Jun 13 #PHP
PHP实现打包zip并下载功能
Jun 12 #PHP
PHPUnit测试私有属性和方法功能示例
Jun 12 #PHP
PHP+redis实现的悲观锁机制示例
Jun 12 #PHP
thinkPHP5框架auth权限控制类与用法示例
Jun 12 #PHP
thinkPHP5框架实现基于ajax的分页功能示例
Jun 12 #PHP
You might like
JSON在PHP中的应用介绍
2012/09/08 PHP
smarty实现多级分类的方法
2014/12/05 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
2016/01/07 PHP
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
2010/01/22 Javascript
6个DIV 135或246间隔一秒轮番显示效果
2010/07/24 Javascript
Mac OS X 系统下安装和部署Egret引擎开发环境
2014/09/03 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
Javascript中获取对象的原型对象的方法小结
2015/02/25 Javascript
js实现文本框宽度自适应文本宽度的方法
2015/08/13 Javascript
基于javascript实现仿百度输入框自动匹配功能
2016/01/03 Javascript
JS 对象(Object)和字符串(String)互转方法
2016/05/20 Javascript
ashx文件获取$.ajax()方法发送的数据
2016/05/26 Javascript
解析浏览器端的AJAX缓存机制
2016/06/21 Javascript
Vue.js表单控件实践
2016/10/27 Javascript
遍历json 对象的属性并且动态添加属性的实现
2016/12/02 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
JS实现的杨辉三角【帕斯卡三角形】算法示例
2019/02/26 Javascript
python实现的防DDoS脚本
2011/02/08 Python
Python类装饰器实现方法详解
2018/12/21 Python
python 已知三条边求三角形的角度案例
2020/04/12 Python
纯CSS3实现8组超炫酷鼠标滑过图片动画
2016/03/16 HTML / CSS
世界第一冲浪品牌:O’Neill
2016/08/30 全球购物
介绍一下write命令
2014/08/10 面试题
给护士表扬信
2014/01/19 职场文书
一名老师的自我评价
2014/02/07 职场文书
老人祝寿主持词
2014/03/28 职场文书
司法助理专业自荐书
2014/06/13 职场文书
幼儿园六一儿童节主持词
2015/06/30 职场文书
消防宣传标语大全
2015/08/03 职场文书
30岁前绝不能错过的10本书
2019/08/08 职场文书
vue中data改变后让视图同步更新的方法
2021/03/29 Vue.js
如何用Navicat操作MySQL
2021/05/12 MySQL
Matlab如何实现矩阵复制扩充
2021/06/02 Python
Python趣味实战之手把手教你实现举牌小人生成器
2021/06/07 Python