我正在重写一个大型PHP项目,以从mysqli切换到PDO。
我知道要避免代码注入,这些是好的做法: -将字符集设置为utf-8 -将PDO :: ATTR_EMULATE_PREPARES设置为false -使用准备好的语句
但是正确的知道我无法修改成千上万行代码,因此我必须包装旧的mysqli函数。 由于我无法修改查询,并且它们使用mysql_real_escape_string,我该怎么办?
我有这样的东西:
function custom_escape_string($string, $link)
{
return mysqli_real_escape_string($link, $string);
}
但是我不能使用mysqli_real_escape_string,因此我需要更改为以下内容:
function custom_escape_string($string, $link)
{
return addslashes($string);
}
我知道,仅用斜线是不够的。我能做什么?
谢谢