php 去掉指定的html标签及内容

本文章给家收集了大量的关于html标签的去除方法,很多朋友可能会想到使用strip_tags函数,但这个函数会把所有的html标签全部删除了,下面我来给大家介绍去掉指定的html标签及内容方法,有需要了解的朋友可参考。

string strip_tags ( string str [, string allowable_tags] )

弊端:这个函数只能保留想要的html标签,就是参数string allowable_tags,在yizero的评论中我知道了这个函数的参数allowable_tags的其他的用法,代码如下:

strip_tags($source, ”); 去掉所以的html标签。

strip_tags($source, ‘<div><img><em>’); 保留字符串中的div、img、em标签,如果想去掉的html的指定标签,那么这个函数就不能满足需求了,于是乎我用到了这个函数,代码如下:

  1. <?php 
  2. /** 
  3. * 删除指定的HTML标签及其中内容,暂时只支持单标签清理 
  4. * 
  5. * @param string $string — 要处理的字符串 
  6. * @param string $tagname — 要删除的标签名称 
  7. * @param boolean $clear — 是否删除标签内容 
  8. * @return string — 返回处理完的字符串 
  9. */ 
  10. function replace_html_tag($string$tagname$clear = false){ 
  11. $re = $clear ? '' : '1'
  12. $sc = '/<' . $tagname . '(?:s[^>]*)?>([sS]*?)?</' . $tagname . '>/i'
  13. return preg_replace($sc$re$string); 

以下是测试代码,代码如下:

  1. // php粉丝网首页内容 
  2. $string = file_get_contents('http://www.phpfensi.com/'); 
  3. // 去掉 style 及包含内容 
  4. $string = replace_html_tag($string'style', true); 
  5. $string = replace_html_tag($string'script', true); 
  6. // 去掉 a 标签,并保存其中内容 
  7. $string = replace_html_tag($string'a'); 
  8. // 去掉 span 标签,并保存其中内容 
  9. $string = replace_html_tag($string'span'); 
  10. echo $string
  11. ?> 

如果我们要删除指定两者之间的数据,代码如下:

  1. <?php 
  2. /**    
  3. * PHP去掉特定的html标签  
  4. * @param array $string    
  5. * @param bool $str   
  6. * @return string  
  7. */   
  8. function _strip_tags($tagsArr,$str) {    
  9.     foreach ($tagsArr as $tag) {   
  10.         $p[]="/(<(?:/".$tag."|".$tag.")[^>]*>)/i";   
  11.     }   
  12.     $return_str = preg_replace($p,"",$str);   
  13.     return $return_str;   
  14. }   
  15.    
  16. $str = "<b>您好</b><input type='text' name='' /><a href='http://www.phpfensi.com'>php粉丝网</a>";   
  17. echo _strip_tags(array("b""input""a"),$str); #去掉 B 标签和 INPUT 标签   
  18. ?>
波比源码 – 精品源码模版分享 | www.bobi11.com
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站源码并不保证全部能正常使用,仅供有技术基础的人学习研究,请谨慎下载
8. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

波比源码 » php 去掉指定的html标签及内容

发表评论

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系站长
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡