首页 > 语言 > PHP > 正文

php 过滤html标签的函数代码

2024-09-04 11:49:01
字体:
来源:转载
供稿:网友

本文章提供四款过滤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.Vevb.com<nr /> <br> 
  23. '; 
  24.     $reg = '/(</?p>|<brs*/?>)|<.+?>/i'
  25.     echo preg_replace($reg,'$1',$str);

发表评论 共有0条评论
用户名: 密码:
验证码: 匿名发表