htmlspecialchars()
函数用于将特殊字符转换为 HTML 实体
strip_tags()
函数:如果您希望在转换特殊字符之前先删除 HTML 标签,可以使用 strip_tags()
函数。示例:
$input = '<script>alert("XSS");</script><p>Hello, World!</p>';
$output = htmlspecialchars($input, ENT_QUOTES, 'UTF-8');
$output_stripped = strip_tags($output);
echo $output_stripped; // 输出:Hello, World!
preg_replace()
函数:如果您需要根据正则表达式替换一些字符,可以在调用 htmlspecialchars()
之前使用 preg_replace()
。示例:
$input = 'Hello <b>World</b> & "Everyone"';
$pattern = '/&/';
$replacement = '&';
$output = preg_replace($pattern, $replacement, htmlspecialchars($input, ENT_QUOTES, 'UTF-8'));
echo $output; // 输出:Hello <b>World</b> & "Everyone"';
array_map()
函数:如果您需要对字符串数组中的每个元素应用 htmlspecialchars()
,可以使用 array_map()
函数。示例:
$input_array = ['Hello <b>World</b>', 'PHP is great!'];
$output_array = array_map(function ($item) {
return htmlspecialchars($item, ENT_QUOTES, 'UTF-8');
}, $input_array);
print_r($output_array); // 输出:Array ( [0] => Hello <b>World</b> [1] => PHP is great! )
这些示例展示了如何将 htmlspecialchars()
与其他 PHP 函数结合使用,以满足不同的需求。