PHP清除指定html标签实例代码

在php中系统为我们内置了一个html标签清除函数strip_tags它删除的是所有字符串了,如果我们只要删除指定的就没有办法了,下面我就来给大家整理了一个站长写的自定义删除html标签函数.

PHP实例如下:

  1. <?php
  2. function strip_selected_tags($text, $tags = array())
  3. {
  4. $args = func_get_args();
  5. $text = array_shift($args);
  6. $tags = func_num_args() > 2 ? array_diff($args,array($text)) : (array)$tags;
  7. foreach ($tags as $tag){
  8. if(preg_match_all('/<'.$tag.'[^>]*>(.*)</'.$tag.'>/iU', $text, $found)){
  9. (www.111cn.net)$text = str_repla(www.111cn.net)ce($found[0],$found[1],$text);
  10. }
  11. } return $text;
  12. }
  13. ?>

这个函数很短,但它实现的功能很实用,第一个参数是原字符串,第二个参数是要删除的HTML的标签数组,如果要删除<a>和<p>标签,只需要使用下面的代码:

  1. <?php
  2. $tags = array();
  3. $tags[0]='a';
  4. $tags[1]='p';
  5. $str = "<a href=http://www.phpfensi.com>link</a><p>help</p>";
  6. echo strip_selected_tags($str,$tags);
  7. ?>

是不是很简单呢?