首页  >  文章  >  php教程  >  php过滤恶意字符

php过滤恶意字符

PHP中文网
PHP中文网原创
2016-05-26 08:19:301332浏览

php过滤恶意字符

//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;
  
}
  
//过滤
  
function htmlencode($str){
  
if(empty($str)) return;
  
if($str=="") return $str;
  
$str=trim($str);
  
$str=str_replace("&","&",$str);
  
$str=str_replace(">",">",$str);
  
$str=str_replace("=strlen($block) && preg_match("/$block/i", $string))
  
{
  
$blist[] = $block;
  
}
  
}
  
//判断有没有过滤内容在数组里
  
if (!empty($blist))
  
{
  
return array_unique($blist);
  
}
  
return false;
  
}
  
//--------------------------
  
// 替换HTML尾标签,为过滤服务
  
//--------------------------
  
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("", "", $str);
  
$str = str_replace("", "", $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=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("&#39;",chr(39),$str);
  
$str=str_replace("
  
",chr(13),$str);
  
$str=str_replace("&#39;&#39;","&#39;",$str);
  
$str=str_replace("css","&#39;",$str);
  
$str=str_replace("CSS","&#39;",$str);
  
return $str;
  
//HTML标签,可以作为扩展过滤
  

  
}

                   

以上就是php过滤恶意字符的内容,更多相关内容请关注PHP中文网(www.php.cn)!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn