htmlspecialchars()
是 PHP 中一个非常有用的函数,用于将特殊字符转换为 HTML 实体。这个函数有四个参数,分别是:
string
:必需。需要转换的字符串。int
:可选。指定字符集。默认值为ENT_QUOTES
,表示将双引号转换为 HTML 实体。其他可选值有:ENT_NOQUOTES
:不转换任何字符(不推荐)ENT_HTML401
:根据 HTML 4.01 规范转换字符(不推荐)ENT_HTML5
:根据 HTML5 规范转换字符(推荐)
bool
:可选。是否将单引号(')视为特殊字符并转换为 HTML 实体。默认值为true
。int
:可选。指定转义深度。默认值为null
,表示自动检测。这个参数主要用于处理嵌套的 HTML 结构。
下面是一些使用 htmlspecialchars()
的示例:
// 使用默认设置 $string = ''; echo htmlspecialchars($string); // 输出: // 设置字符集为 UTF-8 $string = ''; echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8'); // 输出: // 设置不转换单引号 $string = "O'Reilly"; echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8', false); // 输出:O'Reilly // 设置转义深度为 2 $string = 'Hello'; echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8', null, 2); // 输出:Hello
请注意,htmlspecialchars()
函数主要用于防止 XSS(跨站脚本)攻击。在使用这个函数时,请确保正确处理用户输入的数据。