剥离标签

strip_tags 是一个非常强大的功能,如果你知道如何使用它。作为一种防止跨站点脚本攻击的方法,有更好的方法,例如字符编码,但在某些情况下,剥离标签很有用。

基本例子

$string = '<b>Hello,<> please remove the <> tags.</b>';

echo strip_tags($string);

原始产出

Hello, please remove the tags.

允许标签

假设你想要允许某个标记而不允许其他标记,那么你可以在该函数的第二个参数中指定它。此参数是可选的。在我的情况下,我只想通过 <b> 标签。

$string = '<b>Hello,<> please remove the <br> tags.</b>';

echo strip_tags($string, '<b>');

原始产出

<b>Hello, please remove the  tags.</b>

通知(S)

HTML 评论和 PHP 标签也被剥离。这是硬编码的,无法使用 allowable_tags 进行更改。

PHP 5.3.4 及更高版本中,忽略自闭合 XHTML 标记,并且在 allowable_tags 中只应使用非自闭合标记。例如,要同时允许 <br><br/>,你应该使用:

<?php
strip_tags($input, '<br>');
?>