PHP 的 htmlspecialchars 函数

Code 24 0

htmlspecialchars是PHP的一个内置函数,用于将一些预定义的字符转换为HTML实体,这样可以防止跨站脚本攻击(XSS),这个函数接收一个字符串作为参数,并返回一个新的字符串,其中所有特殊字符都被转义。

代码示例

1. 直接使用 htmlspecialchars 函数

<?php
$str = "<script>alert('Hello, World!');</script>";
echo htmlspecialchars($str);
?>

在这个例子中,<>被转换为&lt;&gt;"被转换为&quot;,从而防止了潜在的XSS攻击。

2. 使用 htmlspecialchars 函数处理用户输入

<?php
$username = $_POST['username'];
$safe_username = htmlspecialchars($username, ENT_QUOTES, 'UTF-8');
echo "Username: " . $safe_username;
?>

在这个例子中,我们使用htmlspecialchars函数处理用户输入的用户名,以防止XSS攻击。

优化的代码

虽然htmlspecialchars函数可以有效地防止XSS攻击,但在某些情况下,我们可能希望对某些特定的字符进行转义,而不是所有的特殊字符,在这种情况下,我们可以使用htmlentities函数。

htmlentities函数与htmlspecialchars函数类似,但它将所有的字符都转换为HTML实体,而不仅仅是预定义的特殊字符。

<?php
$str = "Hello, <World>!";
echo htmlentities($str);
?>

在这个例子中,<>被转换为&lt;&gt;"被转换为&quot;

《 PHP 的 htmlspecialchars 函数》.doc
将本文下载保存,方便收藏和打印
导出文档