mssql_escape省去了双撇号


mssql_escape saves double apostrophe

我正在使用下面的函数在将字符串插入数据库之前对其进行转义。虽然它实际上将双撇号插入数据库,并且当我打印出来时,它仍然具有双撇号。使用原始单撇号打印出值的正确方法是什么?

function mssql_escape($var){
    if(get_magic_quotes_gpc()){
        $var = stripslashes($var);
    }
    return str_replace("'", "''", $var);
}

因为您使用的是参数化语句,所以不需要将单引号加倍。这是正确的做事方式,通常不会受到SQL注入攻击。