欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 过滤html标签的函数代码

程序员文章站 2022-05-07 10:45:01
...
本文章提供四款过滤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>  www.phpfensi.com<nr /> <br>

';

$reg = '/(</?p>|<brs*/?>)|<.+?>/i';

echo preg_replace($reg,'$1',$str);

相关标签: php