当前位置:首页 > PHP教程 > php函数 > 列表

php 过滤html标签的函数代码

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-19 23:15:10 浏览: 评论:0 

本文章提供四款过滤html标签的函数代码,方法一最简单的利用了php自带函数strip_tags来过滤所有的html标签,方法二利用了正则表达式来过滤html标签,方法三是清除HTML标签的用户自定义函数,根据ascii编码值来判断是否为字母再过滤.

最直接过滤html方法,代码如下:

strip_tags();

方法二利用正则过滤,代码如下:

  1. function _filter( $string ) { 
  2.   return str_replace(array(" "," "," ",'  '),array('<br />','<br />','<br />',' &nbsp;'),strip_tags($string,'<br><p><img>')); 

正则二,代码如下:preg_replace('/(<br>){1,}/is','<br>', $str);

正则三,代码如下:

  1. function delhtml($str){   //清除html标签 
  2. $st=-1; //开始 
  3. $et=-1; //结束 
  4. $stmp=array(); 
  5. $stmp[]="&nbsp;"
  6. $len=strlen($str); 
  7. for($i=0;$i<$len;$i++){ 
  8.    $ss=substr($str,$i,1); 
  9.    if(ord($ss)==60){ //ord("<")==60 
  10.     $st=$i
  11.    } 
  12.    if(ord($ss)==62){ //ord(">")==62 
  13.     $et=$i
  14.     if($st!=-1){ 
  15.      $stmp[]=substr($str,$st,$et-$st+1); 
  16.     } 
  17.    } 
  18. $str=str_replace($stmp,"",$str); 
  19. return $str
  20. // 
  21. $str='<div class="newscon" id="idnewsdtail"><span id=contextid> 
  22. <p>  www.phpfensi.com<nr /> <br> 
  23. '; 
  24.     $reg = '/(</?p>|<brs*/?>)|<.+?>/i'
  25.     echo preg_replace($reg,'$1',$str);

Tags: php过滤html php过滤函数

分享到: