Heim > Backend-Entwicklung > PHP-Tutorial > php中html字符串过滤函数_PHP教程

php中html字符串过滤函数_PHP教程

WBOY
Freigeben: 2016-07-13 10:40:03
Original
1029 Leute haben es durchsucht

   自定义的一个函数

 代码如下  

function StripHTML($string){
 $pattern=array ("'<script>]*?>.*?</script>'si", "''si",  "']*?>'si",  "'([rn])[s]+'",  "'&(quot|#34);'i",  "'&(amp|#38);'i",  "'&(lt|#60);'i",  "'&(gt|#62);'i",  "'&(nbsp|#160);'i",  "'&(iexcl|#161);'i",  "'&(cent|#162);'i",  "'&(pound|#163);'i",  "'&(copy|#169);'i",  "'(d+);'e");
 $replace=array ('', '', "\1", '', "&", "", ' ', chr(161), chr(162), chr(163), chr(169), "chr(\1)");
 return preg_replace ($pattern, $replace, $str);
}

  除了上面自定的函数之外还有一个php自带的过滤html的函数:strip_tags(string) 这样就可以过滤掉所有的html标签了。

如果想过滤掉除了 php中html字符串过滤函数_PHP教程之外的所有html标签,则可以这样写:

 代码如下  

strip_tags(string,"php中html字符串过滤函数_PHP教程");

过滤除了 php中html字符串过滤函数_PHP教程

xxx

之外的所有html标签,则可以这样写:

 代码如下  

strip_tags(string,"php中html字符串过滤函数_PHP教程

");

  网上找到一个防sql注入函数

 代码如下  

//php 批量过滤post,get敏感数据
if (get_magic_quotes_gpc()) {
$_GET = stripslashes_array($_GET);
$_POST = stripslashes_array($_POST);
}

function stripslashes_array(&$array) {
while(list($key,$var) = each($array)) {
if ($key != 'argc' && $key != 'argv' && (strtoupper($key) != $key || ''.intval($key) == "$key")) {
if (is_string($var)) {
$array[$key] = stripslashes($var);
}
if (is_array($var))  {
$array[$key] = stripslashes_array($var);
}
}
}
return $array;
}
         //--------------------------

// 替换HTML尾标签,为过滤服务 www.111cn.net
//--------------------------
function lib_replace_end_tag($str)
{
if (empty($str)) return false;
$str = htmlspecialchars($str);
$str = str_replace( '/', "", $str);
$str = str_replace("\", "", $str);
$str = str_replace(">", "", $str);
$str = str_replace("<", "", $str);
$str = str_replace("<script>", "", $str);<br /> $str = str_replace("</script>", "", $str);
$str = str_replace("<script>", "", $str);<br /> $str = str_replace("</script>", "", $str);
$str=str_replace("select","select",$str);
$str=str_replace("join","join",$str);
$str=str_replace("union","union",$str);
$str=str_replace("where","where",$str);
$str=str_replace("insert","insert",$str);
$str=str_replace("delete","delete",$str);
$str=str_replace("update","update",$str);
$str=str_replace("like","like",$str);
$str=str_replace("drop","drop",$str);
$str=str_replace("create","create",$str);
$str=str_replace("modify","modify",$str);
$str=str_replace("rename","rename",$str);
$str=str_replace("alter","alter",$str);
$str=str_replace("cas","cast",$str);
$str=str_replace("&","&",$str);
$str=str_replace(">",">",$str);
$str=str_replace(" $str=str_replace(" ",chr(32),$str);
$str=str_replace(" ",chr(9),$str);
$str=str_replace("    ",chr(9),$str);
$str=str_replace("&",chr(34),$str);
$str=str_replace("'",chr(39),$str);
$str=str_replace("
",chr(13),$str);
$str=str_replace("''","'",$str);
$str=str_replace("css","'",$str);
$str=str_replace("CSS","'",$str);

return $str;

}

  使用方法

 代码如下  

引用是直接这样:
$xxx = htmlspecialchars($_POST['xxx']);
或者
$xxx = htmlspecialchars($_GET['xxx']);

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/727582.htmlTechArticle自定义的一个函数 代码如下 function StripHTML($string){ $pattern=array ('script[^]*?.*?/script'si, 'style[^]*?.*?/style'si, '[/!]*?[^]*?'si, '([rn])[s]+', '(quot|#34);'i...
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage