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获取url字符串截取路径的文件名和扩展名的函数
Jan 22 PHP
php数组函数序列之array_pop() - 删除数组中的最后一个元素
Nov 07 PHP
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
Nov 10 PHP
PHP高自定义性安全验证码代码
Nov 27 PHP
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
Apr 13 PHP
深入理解curl类,可用于模拟get,post和curl下载
Jun 08 PHP
php调整gif动画图片尺寸示例代码分享
Dec 05 PHP
thinkphp实现like模糊查询实例
Oct 29 PHP
PHP保存带BOM文件的方法
Feb 12 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 PHP
PHP标准库(PHP SPL)详解
Mar 16 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
Mar 22 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
php smarty模版引擎中的缓存应用
2009/12/02 PHP
PHP嵌套输出缓冲代码实例
2015/05/12 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
2016/07/25 PHP
JavaScript 实现??打印?理
2007/04/28 Javascript
js用图作提交按钮或超连接
2008/03/26 Javascript
解析JavaScript中的标签语句
2013/06/19 Javascript
JS自定义功能函数实现动态添加网址参数修改网址参数值
2013/08/02 Javascript
js中arguments,caller,callee,apply的用法小结
2014/01/28 Javascript
bootstrap data与jquery .data
2014/07/07 Javascript
使用JavaScript 编写简单计算器
2014/11/24 Javascript
Jquery Ajax xmlhttp请求成功问题
2015/02/04 Javascript
js仿微信语音播放实现思路
2016/12/12 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
Javascript将图片的绝对路径转换为base64编码的方法
2018/01/11 Javascript
jquery插件开发模式实例详解
2019/07/20 jQuery
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
[20:39]DOTA2-DPC中国联赛 正赛开幕式 1月18日
2021/03/11 DOTA
Python入门篇之数字
2014/10/20 Python
详解Python的Twisted框架中reactor事件管理器的用法
2016/05/25 Python
Python:Scrapy框架中Item Pipeline组件使用详解
2017/12/27 Python
Python之inspect模块实现获取加载模块路径的方法
2018/10/16 Python
python实现统计代码行数的小工具
2019/09/19 Python
Pytorch实现WGAN用于动漫头像生成
2021/03/04 Python
巧用HTML5给按钮背景设计不同的动画简单实例
2016/08/09 HTML / CSS
eharmony澳大利亚:网上约会服务
2020/02/29 全球购物
东方通信股份有限公司VC面试题
2014/08/27 面试题
品学兼优的大学生自我评价
2013/09/20 职场文书
运动会邀请函范文
2014/02/06 职场文书
艺校音乐专业自我鉴定范文
2014/03/01 职场文书
联村联户简报
2015/07/21 职场文书
为什么代码规范要求SQL语句不要过多的join
2021/06/23 MySQL
Python基本数据类型之字符串str
2021/07/21 Python
Redis 常见使用场景
2021/08/30 Redis
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js
Java异常体系非正常停止和分类
2022/06/14 Java/Android
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS