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 cron中的批处理
Sep 16 PHP
PHP base64+gzinflate压缩编码和解码代码
Oct 03 PHP
php smarty截取中文字符乱码问题?gb2312/utf-8
Nov 07 PHP
PHP中header和session_start前不能有输出原因分析
Jan 11 PHP
php生成zip压缩文件的方法详解
Jun 09 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
Sep 26 PHP
PHP生成自适应大小的缩略图类及使用方法分享
May 06 PHP
PHP把MSSQL数据导入到MYSQL的方法
Dec 27 PHP
PHP调用API接口实现天气查询功能的示例
Sep 21 PHP
php DES加密算法实例分析
Sep 18 PHP
PHP7 list() 函数修改
Mar 09 PHP
Jsonp劫持学习
Apr 01 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
基于mysql的论坛(4)
2006/10/09 PHP
PHP模拟QQ登录的方法
2015/07/29 PHP
详解php语言最牛掰的Laravel框架
2017/11/20 PHP
javascript面向对象之二 命名空间
2011/02/08 Javascript
遍历jquery对象的代码分享
2011/11/02 Javascript
js/ajax跨越访问-jsonp的原理和实例(javascript和jquery实现代码)
2012/12/27 Javascript
JavaScript通过元素的ID和name设置样式
2014/07/08 Javascript
8个超实用的jQuery功能代码分享
2015/01/08 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解
2015/10/09 Javascript
JavaScript中Form表单技术汇总(推荐)
2016/06/26 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
2017/03/25 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
JS+CSS实现网页加载中的动画效果
2017/10/27 Javascript
微信小程序form表单组件示例代码
2018/07/15 Javascript
Vue 表情包输入组件的实现代码
2019/01/21 Javascript
vue+vant使用图片预览功能ImagePreview的问题解决
2020/04/10 Javascript
Python的socket模块源码中的一些实现要点分析
2016/06/06 Python
python3 使用Opencv打开USB摄像头,配置1080P分辨率的操作
2019/12/11 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
2020/08/07 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
美国美发品牌:Bumble and Bumble
2016/10/08 全球购物
Yves Rocher伊夫·黎雪美国官网:法国始创植物美肌1959
2019/01/09 全球购物
Feelunique德国官方网站:欧洲最大的在线美容零售商
2019/07/20 全球购物
Linux面试经常问的文件系统操作命令
2015/11/05 面试题
介绍一下Python下range()函数的用法
2013/11/07 面试题
初一科学教学反思
2014/01/27 职场文书
家长学校实施方案
2014/03/15 职场文书
社区优秀志愿者先进事迹
2014/05/09 职场文书
师德师风承诺书
2014/05/23 职场文书
员工激励培训演讲稿
2014/09/16 职场文书
国家机关领导干部民主生活会对照检查材料思想汇报
2014/09/17 职场文书
2015年全国科普日活动总结
2015/03/23 职场文书
MySQL连接查询你真的学会了吗?
2021/06/02 MySQL
MySQL系列之六 用户与授权
2021/07/02 MySQL
Redis 报错 error:NOAUTH Authentication required
2022/05/15 Redis