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 相关文章推荐
简单的页面缓冲技术
Oct 09 PHP
一步一步学习PHP(3) php 函数
Feb 15 PHP
PHP daddslashes 使用方法介绍
Oct 26 PHP
PHP6 中可能会出现的新特性预览
Apr 04 PHP
PHP使用array_fill定义多维数组的方法
Mar 18 PHP
php准确计算复活节日期的方法
Apr 18 PHP
举例详解PHP脚本的测试方法
Aug 05 PHP
两种php实现图片上传的方法
Jan 22 PHP
PHP+Mysql无刷新问答评论系统(源码)
Dec 20 PHP
PHP处理Ajax请求与Ajax跨域问题
Feb 13 PHP
PHP简单获取上月、本月、近15天、近30天的方法示例
Jul 03 PHP
php数组和链表的区别总结
Sep 20 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
15个小时----从修改程序到自己些程序
2006/10/09 PHP
Dedecms V3.1 生成HTML速度的优化办法
2007/03/18 PHP
php access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
PHP中比较时间大小实例
2014/08/21 PHP
php限制文件下载速度的代码
2015/10/20 PHP
详解php中空字符串和0之间的关系
2016/10/23 PHP
thinkphp实现分页显示功能
2016/12/03 PHP
PHP钩子与简单分发方式实例分析
2017/09/04 PHP
PHP封装XML和JSON格式数据接口操作示例
2019/03/06 PHP
JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
2012/08/14 Javascript
JS 对输入框进行限制(常用的都有)
2013/07/30 Javascript
JavaScript语言核心数据类型和变量使用介绍
2013/08/23 Javascript
JavaScript网页定位详解
2014/01/13 Javascript
jQuery插件datatables使用教程
2016/04/21 Javascript
AngularJs自定义服务之实现签名和加密
2016/08/02 Javascript
使用BootStrap实现用户登录界面UI
2016/08/10 Javascript
js记录点击某个按钮的次数-刷新次数为初始状态的实例
2017/02/15 Javascript
javascript 面向对象function详解及实例代码
2017/02/28 Javascript
JS触摸事件、手势事件详解
2017/05/04 Javascript
JavaScript简单拖拽效果(1)
2017/05/17 Javascript
Vue+SpringBoot开发V部落博客管理平台
2017/12/27 Javascript
详解Angular2学习笔记之Html属性绑定
2018/01/03 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
微信小程序日历/日期选择插件使用方法详解
2018/12/28 Javascript
vue2.0+vue-router构建一个简单的列表页的示例代码
2019/02/13 Javascript
PHPStorm中如何对nodejs项目进行单元测试详解
2019/02/28 NodeJs
基于Ionic3实现选项卡切换并重新加载echarts
2020/09/24 Javascript
Python获取网页上图片下载地址的方法
2015/03/11 Python
将tensorflow的ckpt模型存储为npy的实例
2018/07/09 Python
俄罗斯金苹果网上化妆品和香水商店:Goldapple
2019/12/01 全球购物
班级道德讲堂实施方案
2014/02/24 职场文书
《圆明园的毁灭》教学反思
2014/02/28 职场文书
运动会演讲稿
2014/05/07 职场文书
2015年医院保卫科工作总结
2015/07/23 职场文书
PyQt5实现多张图片显示并滚动
2021/06/11 Python
MySQL优化及索引解析
2022/03/17 MySQL