使用PDO bindParam时是否需要转义变量?

时间:2016-01-29 12:21:47

标签: php pdo

我正在编写以下代码,并想知道在使用bindParam()时是否仍然需要转义我的变量。

$usernameCheckQuery = $db->getConnection()->prepare("SELECT username FROM users WHERE username = :username");
$usernameCheckQuery->bindParam(":username", $data['username'], PDO::PARAM_STR);
$usernameCheckQuery->execute();

我在某些地方读到过没有必要和其他地方说它是。谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

pdo正在逃避,所以你不需要。 - 您可能需要进行其他类型的验证,但这取决于您的代码。如需更长的答案,请参阅 Are PDO prepared statements sufficient to prevent SQL injection?