PHP防XSS 防SQL注入的代码

2016-05-26 21:19:30     点击:

代码已验证 网络转载

PHP防XSS 防SQL注入的代码

class protection{
	public static function filtrate($str)
	{
		$farr = array(
			"/\\s+/",
			"/<(\\/?)(script|i?frame|style|html|body|title|link|meta|object|\\?|\\%)([^>]*?)>/isU",
			"/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU",
		);
		$str = preg_replace($farr,"",$str);
		return addslashes($str);
	}
	  
	public static function sweep($array)
	{
		if (is_array($array))
		{
			foreach($array as $k => $v)
			{
				$array[$k] = self::sweep($v);
			}
		}
		else
		{
			$array = self::filtrate($array);
		}
		return $array;
	}
}
$_REQUEST = protection::sweep($_REQUEST);
$_GET = protection::sweep($_GET);
$_POST = protection::sweep($_POST);