PHP 阻止 SQL 注入

阻止 SQL 注入

// 阻止 SQL 注入
// SQL 注入或者 SQLi 常见的攻击网站的手段,使用下面的代码可以帮助你防止这些工具。
function clean($input)
{
    if (is_array($input)){
        foreach ($input as $key => $val){
            $output[$key] = clean($val);
        }
    }else{
        $output = (string)$input;

        if (get_magic_quotes_gpc()){    //get_magic_quotes_gpc — 获取当前 magic_quotes_gpc 的配置选项设置
            $output = stripslashes($output);    //stripslashes — 反引用一个引用字符串,返回一个去除转义反斜线后的字符串(\' 转换为 ' 等等)。
            									//双反斜线(\\)被转换为单个反斜线(\)。 O\'reilly => O'reilly
        }
        $output = htmlentities($output, ENT_QUOTES, 'UTF-8');   //htmlentities — 将字符转换为 HTML 转义字符 > => >
    }
    return $output;
}

$text = "";
$text = clean($text);
echo $text;

//输出结果为:<script>alert(1)</script>

你可能感兴趣的:(PHP,php)