PHP html_entity_decode() 函数
示例
将 HTML 实体转换为字符
<?php
$str = '<a href="https://w3schools.org.cn">w3schools.com</a>';
echo html_entity_decode($str);
?>
上述代码的 HTML 输出是 (查看源代码)
<a href="https://w3schools.org.cn">w3schools.com</a>
上述代码的浏览器输出是
定义和用法
html_entity_decode() 函数将 HTML 实体转换为字符。
html_entity_decode() 函数是 htmlentities() 的反向操作。
语法
html_entity_decode(string,flags,character-set)
参数值
参数 | 描述 |
---|---|
string | 必需。规定要解码的字符串 |
flags | 可选。规定如何处理引号以及使用何种文档类型。 可用的引号样式是
指定文档类型的附加标志
|
字符集 | 可选。一个字符串,指定要使用的字符集。 允许的值是
注意: 在 PHP 5.4 之前的版本中,无法识别的字符集将被忽略并替换为 ISO-8859-1。从 PHP 5.4 开始,它将被忽略并替换为 UTF-8。 |
技术详情
返回值 | 返回转换后的字符串 |
---|---|
PHP 版本 | 4.3.0+ |
更新日志 | PHP 5.6 - 将character-set参数的默认值更改为配置中的默认字符集值。 PHP 5.4 - 将character-set参数的默认值更改为UTF-8。 PHP 5.4 - 添加了 ENT_HTML401、ENT_HTML5、ENT_XML1 和 ENT_XHTML。 PHP 5.0 - 添加了对多字节编码的支持 |
更多示例
示例
将一些 HTML 实体转换为字符
<?php
$str = "Albert Einstein said: 'E=MC²'";
echo html_entity_decode($str, ENT_COMPAT); // 只会转换双引号
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES); // 不转换任何引号
?>
上述代码的 HTML 输出是 (查看源代码)
Albert Einstein said: 'E=MC²'<br>
Albert Einstein said: 'E=MC²'<br>
Albert Einstein said: 'E=MC²'
上述代码的浏览器输出是
Albert Einstein said: 'E=MC²'
Albert Einstein said: 'E=MC²'
Albert Einstein said: 'E=MC²'
示例
将一些 HTML 实体转换为字符,使用西欧字符集
<?php
$str = "My name is Øyvind Åsane. I'm Norwegian.";
echo html_entity_decode($str, ENT_QUOTES, "UTF-8");
?>
上述代码的 HTML 输出是 (查看源代码)
My name is Øyvind Åsane. I'm Norwegian.
上述代码的浏览器输出是
My name is Øyvind Åsane. I'm Norwegian.
❮ PHP 字符串参考