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

PHP中如何使用strip_tags函数来去除HTML标签

发布时间:2023-06-29 22:56:37

在PHP中,可以使用strip_tags函数来去除HTML标签。strip_tags函数的作用是从字符串中去除HTML和PHP标签。

strip_tags函数的使用格式为:

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

- $string是要处理的字符串。

- $allowable_tags是可选参数,用于指定要保留的HTML标签。如果没有指定该参数,则会删除所有标签。

以下是使用strip_tags函数去除HTML标签的示例:

$input = "<p>这是一个包含HTML标签的字符串。</p>";
$output = strip_tags($input);
echo $output; // 输出:这是一个包含HTML标签的字符串。

在上面的示例中,使用strip_tags函数去除了$input字符串中的<p>标签。

如果希望保留某些HTML标签,可以将这些标签名称作为第二个参数传递给strip_tags函数,多个标签之间用空格分隔。例如,只保留<p><a>标签:

$input = "<p>这是一个包含HTML标签的字符串。</p><a href='example.com'>链接</a>";
$output = strip_tags($input, "<p><a>");
echo $output; // 输出:这是一个包含HTML标签的字符串。<a href='example.com'>链接</a>

在上面的示例中,strip_tags函数只保留了<p><a>标签。

需要注意的是,strip_tags函数只会去除HTML标签,而不会处理其他HTML实体或特殊字符。如果希望去除HTML实体,可以使用htmlspecialchars_decode函数。

另外,strip_tags函数也可以处理数组或对象的值,对其进行递归处理。例如:

$input = [
    'title' => "<h1>标题</h1>",
    'content' => "<p>这是一段包含HTML标签的内容。</p>"
];
$output = strip_tags($input);
print_r($output);
// 输出:
// Array
// (
//     [title] => 标题
//     [content] => 这是一段包含HTML标签的内容。
// )

在上面的示例中,strip_tags函数递归地去除了$input数组中的HTML标签。

总结来说,strip_tags函数可以很方便地去除字符串中的HTML标签,默认情况下会删除所有标签,也可以通过可选参数指定要保留的标签。它是处理从HTML中提取纯文本时的常用函数之一。