欢迎访问宙启技术站
智能推送

过滤用户输入的HTML标签的PHP函数

发布时间:2023-08-12 01:03:55

在PHP中,可以使用strip_tags()函数来过滤用户输入的HTML标签。strip_tags()函数的语法如下:

strip_tags(string $string, string $allowable_tags = null): string

该函数会将指定字符串中的HTML标签和PHP标签去除,并返回过滤后的字符串。

其中, 个参数为要过滤的字符串,第二个参数为允许保留的标签。如果不设置第二个参数,默认会移除所有HTML和PHP标签。

下面是一个使用strip_tags()函数过滤用户输入的HTML标签的示例代码:

<?php
function filter_html_tags($input) {
    // 允许保留的标签:p、a、img
    $allowed_tags = '<p><a><img>';
    
    // 过滤HTML标签
    $filtered_input = strip_tags($input, $allowed_tags);
    
    return $filtered_input;
}

// 用户输入的HTML代码
$user_input = '<p>This is a <strong>test</strong></p><script>alert("Hello!");</script>';

// 过滤HTML标签
$filtered_input = filter_html_tags($user_input);

echo $filtered_input;
?>

运行该代码,输出为:

<p>This is a test</p>

可以看到,经过strip_tags()函数过滤后,用户输入的HTML标签被成功去除了。

需要注意的是,strip_tags()函数只能过滤HTML标签,不能防止其他形式的代码注入和攻击。因此,为了确保系统的安全性,仍需采取其他更全面的安全防护措施,如使用合适的输入验证和过滤、使用防跨站脚本攻击(XSS)的技术等。