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

PHP中的strip_tags()函数简介及用法示例

发布时间:2023-06-09 10:44:23

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)。它还可以使用回调函数等高级技术来优化过滤方式,从而实现更精细的控制。