htmlspecialchars_decode() 函数是 htmlspecialchars() 函数的反函数。
htmlspecialchars() 可以拿来防止XSS;可参考:https://www.zhihu.com/question/27646993
htmlspecialchars_decode() 函数
更多实例
例子 1
把预定义的 HTML 实体转换为字符:
<?php
$str = "Bill & 'Steve'";
echo htmlspecialchars_decode($str, ENT_COMPAT); // 只转换双引号
echo "<br>";
echo htmlspecialchars_decode($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo htmlspecialchars_decode($str, ENT_NOQUOTES); // 不转换任何引号
?>
以上代码的 HTML 输出如下(查看源代码):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
以上代码的浏览器输出:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
例子 2
把预定义 HTML 实体转换为双引号:
<?php
$str = 'I love "PHP".';
echo htmlspecialchars_decode($str, ENT_QUOTES); // 转换双引号和单引号
?>
以上代码的 HTML 输出如下(查看源代码):
<!DOCTYPE html> <html> <body> I love "PHP". </body> </html>
以上代码的浏览器输出:
I love "PHP".
htmlspecialchars() 函数:
更多实例
例子 1
把一些预定义的字符转换为 HTML 实体:
<?php
$str = "Bill & 'Steve'";
echo htmlspecialchars($str, ENT_COMPAT); // 只转换双引号
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // 不转换任何引号
?>
以上代码的 HTML 输出如下(查看源代码):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
以上代码的浏览器输出:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'