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

PHP中strip_tags函数的使用方法和示例

发布时间:2023-06-30 10:05:39

strip_tags函数是PHP中的字符串处理函数,用于去除字符串中的HTML标签。该函数可以用于防止跨站脚本攻击(XSS攻击),或者在某些场景下需要仅保留纯文本时使用。

函数的语法如下:

strip_tags ( string $string [, string $allowable_tags ] ) : string

该函数接受两个参数, 个参数是要处理的字符串,第二个参数是可选的,用于指定允许保留的HTML标签。如果指定了第二个参数,那么除了这些标签以外的所有标签都将被删除。

下面是一些示例来说明strip_tags函数的使用方法:

1. 仅去除HTML标签,保留纯文本:

$text = '<p>Hello, <strong>World!</strong></p>';
$plainText = strip_tags($text);
echo $plainText;  // 输出: Hello, World!

在这个示例中,<p><strong>标签被去除了,只保留了其中的文本。

2. 保留部分HTML标签:

$text = '<p>Hello, <strong>World!</strong> This is a <a href="https://example.com">link</a></p>';
$allowedTags = '<p><a>';
$filteredText = strip_tags($text, $allowedTags);
echo $filteredText;  // 输出: <p>Hello, World! This is a <a href="https://example.com">link</a></p>

在这个示例中,函数的第二个参数指定了允许保留的标签,只有<p><a>标签被保留了下来,<strong>标签被去除了。

3. 去除特定标签的所有属性:

$text = '<p style="color:red;">Hello, <strong>World!</strong></p>';
$filteredText = strip_tags($text, '<p>');
echo $filteredText;  // 输出: <p>Hello, World!</p>

在这个示例中,函数的第二个参数指定了要保留的标签,但是去除了这些标签的所有属性。

需要注意的是,strip_tags函数只去除HTML标签,不会处理其他类型的标记,例如PHP代码等。此外,该函数不会解析HTML实体,如果要转换实体,可以使用html_entity_decode函数。

综上所述,strip_tags函数是PHP中用于去除字符串中HTML标签的函数, 它可以用于过滤用户输入,防止XSS攻击,或者在某些场景下需要仅保留纯文本的情况使用。