PHP中的strip_tags()函数简介及用法示例
strip_tags()是 PHP 的一个内置函数,用于从字符串中删除 HTML 和 PHP 标签,并返回一个仅包含纯文本的字符串。该函数可以用于去除用户输入、数据存储或任何需要过滤 HTML 和 PHP 标记的场景中。
strip_tags()函数的基本语法:
strip_tags ( string $str [, string $allowable_tags ] ) : string
其中,参数 $str 表示要去除 HTML 和 PHP 标记的字符串,而可选参数 $allowable_tags 表示可保留的标签,用于在返回的纯文本字符串中保留部分标签。
下面是一个基本的用法示例:
$text = '<p>这是一个包含 HTML 标签的文本。</p>'; $stripped_text = strip_tags($text); echo $stripped_text; // 输出:这是一个包含 HTML 标签的文本。
在这个示例中,我们使用 strip_tags() 函数去除了变量 $text 中的 HTML 标签,并将结果赋值给 $stripped_text 变量。最后,我们通过 echo 函数输出 $stripped_text 变量的值。
我们还可以使用 $allowable_tags 参数来保留指定的标签,如下所示:
$text = '<p>这是一个包含 <strong>HTML</strong> 标签的文本。</p>'; $allowed_tags = '<strong>'; $stripped_text = strip_tags($text, $allowed_tags); echo $stripped_text; // 输出:这是一个包含 <strong>HTML</strong> 标签的文本。
在这个示例中,我们将 $allowed_tags 参数设置为 <strong>,这意味着除了 <strong> 标签之外的所有标签都将被删除。最后,输出的文本中保留了 <strong> 标签。
此外,strip_tags()函数还可以使用回调函数来过滤文本中的标记,如下所示:
function my_strip_tags($str) {
return strip_tags($str, '<strong>');
}
$text = '<p>这是一个包含 <strong>HTML</strong> 标签的文本。</p>';
$stripped_text = my_strip_tags($text);
echo $stripped_text; // 输出:这是一个包含 <strong>HTML</strong> 标签的文本。
在这个示例中,我们创建了一个名为 my_strip_tags 的回调函数,并将其作为参数传递给 array_map 函数。回调函数的作用是调用 strip_tags 函数并保留 <strong> 标签。最后,我们输出过滤后的文本。
总结:
strip_tags()函数是一种非常有用的过滤 HTML 和 PHP 标记的技术,可用于许多 PHP 应用程序中,包括表单验证、数据存储和防止跨站脚本攻击(XSS)。它还可以使用回调函数等高级技术来优化过滤方式,从而实现更精细的控制。
