我一直在研究PDO的bindValue()。我知道用PDO准备我的SQL语句会阻止SQL注入的发生。
$stmt = $dbh->prepare('SELECT * FROM articles WHERE id = :id AND title = :title');
$stmt->bindValue(':id', PDO::PARAM_INT);
$stmt->bindValue(':title', PDO::PARAM_STR);
$stmt->execute();
通过将ID绑定为数字,并且Title是一个字符串,我们可以限制当有人尝试在代码中进行SQL注入时所造成的损害。
我们是否应该始终将我们的值与PDO :: PARAM_绑定,以便我们可以限制SQL注入中可以从数据库中提取的内容?在执行bindValue()时,这是否会增加PDO的安全性?