首页 > php函数 > php 过滤html标签的函数代码

php 过滤html标签的函数代码

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

//最直接过滤html方法

 代码如下 复制代码

strip_tags();

//方法二利用正则过滤
function _filter( $string ) {
  return str_replace(array(" "," "," ",'  '),array('<br />','<br />','<br />',' &nbsp;'),strip_tags($string,'<br><p><img>'));
}

 

//正则二

 代码如下 复制代码
preg_replace('/(<br>){1,}/is','<br>', $str);


//正则三

 代码如下 复制代码

function delhtml($str){   //清除html标签
$st=-1; //开始
$et=-1; //结束
$stmp=array();
$stmp[]="&nbsp;";
$len=strlen($str);
for($i=0;$i<$len;$i++){
   $ss=substr($str,$i,1);
   if(ord($ss)==60){ //ord("<")==60
    $st=$i;
   }
   if(ord($ss)==62){ //ord(">")==62
    $et=$i;
    if($st!=-1){
     $stmp[]=substr($str,$st,$et-$st+1);
    }
   }
}
$str=str_replace($stmp,"",$str);
return $str;
}
//

$str='<div class="newscon" id="idnewsdtail"><span id=contextid>
<p>  http://www.phprm.com /> <br>
';
    $reg = '/(</?p>|<brs*/?>)|<.+?>/i';
    echo preg_replace($reg,'$1',$str);



本文地址:http://www.phprm.com/function/34770.html

转载随意,但请附上文章地址:-)

标签:none

发表留言