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中new static()与new self()的区别异同分析
Aug 22 PHP
PHP+jQuery 注册模块开发详解
Oct 14 PHP
Yii中CGridView关联表搜索排序方法实例详解
Dec 03 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
Apr 17 PHP
深入剖析浏览器退出之后php还会继续执行么
May 17 PHP
jquery+thinkphp实现跨域抓取数据的方法
Oct 15 PHP
Zend Framework入门教程之Zend_Session会话操作详解
Dec 08 PHP
PHP实现QQ登录的开原理和实现过程
Feb 04 PHP
PHP rmdir()函数的用法总结
Jul 02 PHP
TP5框架实现上传多张图片的方法分析
Mar 29 PHP
PHP文件操作简单介绍及函数汇总
Dec 11 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
sony ICF-2010 拆解与改装
2021/03/02 无线电
PHP取整函数:ceil,floor,round,intval的区别详细解析
2013/08/31 PHP
模拟用户操作Input元素,不会触发相应事件
2007/05/11 Javascript
JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)
2011/07/04 Javascript
HTML5之lang属性与dir属性的详解
2013/06/19 Javascript
JavaScript获取function所有参数名的方法
2015/10/30 Javascript
基于WebUploader的文件上传js插件
2016/08/19 Javascript
AngularJS入门教程之MVC架构实例分析
2016/11/01 Javascript
详解jQuery选择器
2016/12/21 Javascript
JS自定义滚动条效果简单实现代码
2020/10/27 Javascript
vue微信分享 vue实现当前页面分享其他页面
2017/12/02 Javascript
详解JavaScript作用域和作用域链
2019/03/19 Javascript
js中数组常用方法总结(推荐)
2019/04/09 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
2019/06/24 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
vue实现滚动鼠标滚轮切换页面
2020/12/13 Vue.js
django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决
2018/07/13 Python
对Python中list的倒序索引和切片实例讲解
2018/11/15 Python
python增加图像对比度的方法
2019/07/12 Python
python基于celery实现异步任务周期任务定时任务
2019/12/30 Python
Python自动创建Excel并获取内容
2020/09/16 Python
解决tensorflow模型压缩的问题_踩坑无数,总算搞定
2021/03/02 Python
Html5之svg可缩放矢量图形_动力节点Java学院整理
2017/07/17 HTML / CSS
Html5 APP中监听返回事件处理的方法示例
2018/03/15 HTML / CSS
英国家喻户晓的高街品牌:River Island
2017/11/28 全球购物
学生会干部自荐信
2014/02/04 职场文书
沈阳故宫导游词
2015/01/31 职场文书
幼儿园校车安全责任书
2015/05/08 职场文书
幼儿园科学课教学反思
2016/03/03 职场文书
开发一个封装iframe的vue组件
2021/03/29 Vue.js
企业开发CSS命名BEM代码规范实践
2022/02/12 HTML / CSS
vue选项卡切换的实现案例
2022/04/11 Vue.js
css3 文字断裂效果
2022/04/22 HTML / CSS
python井字棋游戏实现人机对战
2022/04/28 Python
Java Spring Boot请求方式与请求映射过程分析
2022/06/25 Java/Android
全网非常详细的pytest配置文件
2022/07/15 Python