html_entity_decode()

1. 定义

该函数将 HTML 实体转换为相应的字符。

2. 语法

html_entity_decode ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ini_get("default_charset") ]] ) : string

3. 参数说明

参数 可选性 数据类型 描述
$string 必需 字符串 需要解码的字符串
$flags 可选 常量 设置该函数如何处理引号和使用的文档类型,默认为ENT_COMPAT | ENT_HTML401
$encoding 可选 字符串 转换字符时使用的字符集编码,默认为php.ini文件中设置的编码集

其中,$flags的值有以下几种:

  • ENT_COMPAT:只转换双引号,而不转换单引号
  • ENT_QUOTES:既转换单引号,也转换双引号
  • ENT_NOQUOTES:单/双引号都不转换
  • ENT_HTML401:以HTML 4.01处理代码
  • ENT_XML1:以XML 1处理代码
  • ENT_XHTML:以XHTML处理代码
  • ENT_HTML5:以HTML 5处理代码

再有,$encoding支持的字符集有:ISO-8859-1ISO-8859-5ISO-8859-15UTF-8cp866cp1251cp1252KOI8-RBIG5GB2312BIG5-HKSCSShift_JISEUC-JPMacRoman等。

4. 示例

<?php

// html_entity_decode()
// 将 HTML 实体转换为相应的字符

$str = '&lt;h1&gt;我们是极速教程&lt;/h1&gt;&quot;极速教程&quot;是一个全新的教程网站';
$res = html_entity_decode($str, ENT_QUOTES | ENT_HTML5);
var_dump($res);// 输出:string(74) "<h1>我们是极速教程</h1>"极速教程"是一个全新的教程网站"

5. 延展阅读