文档章节

php htmlspecialchars_decode()函数将一些HTML实体转换为字符

bengozhong
 bengozhong
发布于 04/08 18:00
字数 506
阅读 13
收藏 0

在php中,htmlspecialchars_decode()函数是用来把一些预定义的HTML实体转换为字符,返回转换后的字符串,原字符串不变;

将被转换的HTML实体有:

  • &:转换为&;
  • ":转换为";
  • ':转换为';
  • &lt;:转换为<;
  • &gt;:转换为>;

htmlspecialchars_decode()函数是htmlspecialchars()函数的反函数,htmlspecialchars()函数是用来将特殊字符转换为HTML实体;

htmlspecialchars_decode()函数有两个参数,第一个参数用来规定需要转换为字符的HTML实体字符串;第二个参数是PHP 5.4中新增的可选参数,用来规定如何处理引号以及使用哪种文档类型,可能的值见下边参数说明;

htmlspecialchars_decode()函数语法格式

$newStr = htmlspecialchars_decode(string,flags);

参数说明

  • string:规定需要转换为字符的HTML实体字符串;
  • flags:PHP 5.4中新增的可选参数,规定如何处理引号以及使用哪种文档类型,可选参数。

可用的引号类型:

  • ENT_COMPAT - 默认。仅解码双引号;
  • ENT_QUOTES - 解码双引号和单引号;
  • ENT_NOQUOTES - 不解码任何引号;

规定使用的文档类型的附加flags:

  • ENT_HTML401 - 默认。作为 HTML 4.01 处理代码;
  • ENT_HTML5 - 作为 HTML 5 处理代码;
  • ENT_XML1 - 作为 XML 1 处理代码;
  • ENT_XHTML - 作为 XHTML 处理代码;

实例:

 
  1. <?php
  2. header("content-type:text/html;charset=utf-8");//设置编码,解决中文乱码
  3. $string = "ggbiji &amp; 'ggbiji'";
  4. $newStr1 = htmlspecialchars_decode($string, ENT_COMPAT); // 默认,仅解码双引号
  5. $newStr2 = htmlspecialchars_decode($string, ENT_QUOTES); // 解码双引号和单引号
  6. $newStr3 = htmlspecialchars_decode($string, ENT_NOQUOTES); // 不解码任何引号
  7. echo $newStr1."<br/>\n";
  8. echo $newStr2."<br/>\n";
  9. echo $newStr3."<br/>\n";
  10. ?>

 运行代码

运行结果:

htmlspecialchars_decode()函数

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

htmlspecialchars_decode()函数

 

更多操作字符串的函数——>PHP String字符串函数大全

© 著作权归作者所有

bengozhong
粉丝 20
博文 520
码字总数 539008
作品 0
深圳
技术主管
私信 提问
PHP htmlspecialchars和htmlspecialchars_decode

1.htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。 函数原型:htmlspecialchars(string,quotestyle,character-set) 预定义的字符是: & (和号) 成为 & " (双引号) 成为 " ...

freedonn
2014/02/28
37
0
php html_entity_decode HTML实体转义

最近遇到一个问题,数据中包含中文引号,结果被转义存储到数据库,取数据的时候用了htmlspecialcharsdecode把实体转义回去,结果发现并没有生效,看了一下htmlspecialcharsdecode只支持5个指...

努力的C
2018/06/29
0
0
PHP htmlspecialchars和htmlspecialchars_decode(函数)

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。 函数原型:htmlspecialchars(string,quotestyle,character-set) 预定义的字符是: & (和号) 成为 & ” (双引号) 成为 " ...

freedonn
2014/09/01
7.9K
0
htmlentities和htmlspecialchars 的区别

多人都以为htmlentities跟htmlspecialchars的功能是一样的,都是格式化html代码的,我以前也曾这么认为,但是今天我发现并不是这样的。 代码如下: '&' (ampersand) becomes '&' '"' (double......

BearCatYN
2015/03/26
35
0
浅析PHP中处理HTML特殊字符转换

我们在用PHP处理页面显示内容时,经常会遇到一些特殊字符转换问题,如果处理不当就会导致页面显示混乱,不能得到目标效果。所以本文我们将和大家一起归纳总结PHP中处理HTML特殊字符转换的常用...

GavinHsueh
2017/10/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Docker常用命令小记

除了基本的<font color="blue">docker pull</font>、<font color="blue">docker image</font>、<font color="blue">docker ps</font>,还有一些命令及参数也很重要,在此记录下来避免遗忘。 ......

程序员欣宸
昨天
4
0
MAT使用-jvm内存溢出问题分析定位

1.MAT简介: MAT 全称 Eclipse Memory Analysis Tools 是一个分析 Java堆数据的专业工具,可以计算出内存中对象的实例数量、占用空间大小、引用关系等,看看是谁阻止了垃圾收集器的回收工作,...

xiaomin0322
昨天
4
0
内网和外网之间的通信(端口映射原理)

首先解释一下“内网”与“外网”的概念: 内网:即所说的局域网,比如学校的局域网,局域网内每台计算机的IP地址在本局域网内具有互异性,是不可重复的。但两个局域网内的内网IP可以有相同的...

Jack088
昨天
5
0
3.深入jvm内核-原理、诊断与优化-4. GC算法和种类

一、GC算法和种类 GC的概念 GC算法 引用计数法 标记清除 标记压缩 复制算法 可触及性 Stop-The-World GC的对象是堆空间和永久区 引用计数法 老牌垃圾回收算法 通过引用计算来回收垃圾 使用者...

hexiaoming123
昨天
4
0
MySQL中的哈希索引

Memory中的哈希索引 哈希索引是基于哈希表实现的,只有精确匹配索引所有列的查询才有效。对于每一行数据,存储引擎都会对所有的索引列计算一个哈希码,哈希码是一个较小的值,并且不同键值的...

我的眼里只有眼屎
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部