PHP如何从字符串中删除html标记(<div> </div>,<p> </p>,<span> </span>)

时间:2010-03-25 07:05:51

标签: php

使用strip_tags()从一个内容中删除HTML标记。但我想删除除<DIV></DIV>,<P></P>,<SPAN></SPAN>标记和<img>之外的html(<a>)标记,我不想从中删除<img ><a>标记。但需要从该内容中删除其他所有html标签,我该如何帮助我。

谢谢

3 个答案:

答案 0 :(得分:7)

如果要删除<img>标记以外的所有标记,可以这样做:

strip_tags($your_text, '<img><a>');

strip_tags函数的第二个参数允许您指定允许的标记。您也可以指定多个标签。

答案 1 :(得分:1)

<?php
$text = '<p>Test paragraph.</p><img>sdfsdfsdfsd</img><!-- Comment --> <a href="#fragment">Other text</a>';
echo "\n";
echo strip_tags($text, '<p><a><img>');
?>

答案 2 :(得分:1)

strip_tags有很多边缘情况,它不起作用。如果您在不受信任的内容上使用此功能,则最好使用HtmlPurifier代替。