牛牛在线工具

htmlspecialchars()

收录 8868 个 PHP 函数,含用途说明与用法示例。

htmlspecialchars()

将特殊字符转换为 HTML 实体,以防止 XSS(跨站脚本攻击)攻击

函数名称:htmlspecialchars() 函数说明:htmlspecialchars() 函数用于将特殊字符转换为 HTML 实体,以防止 XSS(跨站脚本攻击)攻击。 函数语法:htmlspecialchars(string $string, int $flags = ENT_COMPAT | ENT_HTML401, string|null $encoding = null, bool $double_encode = true): string 参数说明: $string:必需,要转换的字符串。 $flags:可选,用于指定转换的规则。默认为 ENT_COMPAT | ENT_HTML401,表示将双引号转换为实体,其他特殊字符保持不变。可选的标志有: ENT_COMPAT:默认值,仅将双引号转换为实体。 ENT_QUOTES:将双引号和单引号都转换为实体。 ENT_NOQUOTES:不转换任何引号。 ENT_HTML401:将字符转换为 HTML 4.01 实体。 ENT_XML1:将字符转换为 XML 1 实体。 ENT_XHTML:将字符转换为 XHTML 实体。 ENT_HTML5:将字符转换为 HTML 5 实体。 $encoding:可选,指定要使用的字符编码。默认为 null,表示使用当前脚本的字符编码。 $double_encode:可选,指定是否对已经转换的实体再次进行转换。默认为 true,表示转换两次。 返回值:返回转换后的字符串。 示例: 基本用法: $str = 'This is a "quote" <tag>.'; $encoded_str = htmlspecialchars($str); echo $encoded_str; // 输出:This is a &quot;quote&quot; &lt;tag&gt;. 指定转换规则和字符编码: $str = 'This is a "quote" <tag>.'; $encoded_str = htmlspecialchars($str, ENT_QUOTES, 'UTF-8'); echo $encoded_str; // 输出:This is a &quot;quote&quot; &lt;tag&gt;. 禁止对已转换的实体再次进行转换: $str = 'This is a "quote" <tag>.'; $encoded_str = htmlspecialchars($str, ENT_QUOTES, 'UTF-8', false); echo $encoded_str; // 输出:This is a &quot;quote&quot; &lt;tag&gt;. 注意事项: htmlspecialchars() 函数只转换特殊字符,不会转换整个 HTML 标签,因此并不能完全阻止 XSS 攻击,仍然需要其他安全措施。 在输出用户输入的内容时,务必使用 htmlspecialchars() 函数进行转换,以避免潜在的安全风险。