加入收藏 | 设为首页 | 会员中心 | 我要投稿 张家口站长网 (https://www.0313zz.com.cn/)- 办公协同、操作系统、混合云网络、数据湖、视觉智能!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP:过滤html标签的函数

发布时间:2022-07-29 11:09:38 所属栏目:PHP教程 来源:互联网
导读:过滤html标签在php中太简单了,我们可以直接使用strip_tags函数来实现了,下面给各位整理了一些关于 strip_tags函数的例子. php过滤html的函数:strip_tags(string) 这样就可以过滤掉所有的html标签了,如果想过滤掉除了img src=之外的所有html标签,则可以这样写
  过滤html标签在php中太简单了,我们可以直接使用strip_tags函数来实现了,下面给各位整理了一些关于 strip_tags函数的例子.
 
  php过滤html的函数:strip_tags(string)
 
  这样就可以过滤掉所有的html标签了,如果想过滤掉除了<img src="">之外的所有html标签,则可以这样写:strip_tags(string,"<img>");
 
  过滤除了<img src=""><p>xxx</p><b></b>之外的所有html标签,则可以这样写:
 
  strip_tags(string,"<img><p><b>");
 
  php有效的过滤html标签,js代码,css样式标签:
 
  <?php  
   
  $str = preg_replace( "@<script(.*?)</script>@is", "", $str );  
   
  $str = preg_replace( "@<iframe(.*?)</iframe>@is", "", $str );  
   
  $str = preg_replace( "@<style(.*?)</style>@is", "", $str );  
   
  $str = preg_replace( "@<(.*?)>@is", "", $str );  
   
  ?>
  自定义函数:
 
  function uh($str)
   
   {
   
       $farr = array(
   
           "/s+/",                                                                     
   
                          //过滤多余的空白
   
           "/<(/?)(script|i?frame|style|html|body|title|link|meta|?|%)([^>]*?)>/isu",
   
     //过滤 <script 等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可
   
   以加入<object的过滤
   
           "/(<[^>]*)on[a-za-z]+s*=([^>]*>)/isu",                                      
   
   //过滤网页特效的on事件
   
         
   
      );
   
      $tarr = array(
   
           " ",
   
           "<123>",           //如果要直接清除不安全的标签,这里可以留空
   
           "12", //phpfensi.com
   
      );
   
    $str = preg_replace( $farr,$tarr,$str);
   
      return $str;
   
   } 

(编辑:张家口站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读