$sql = "UPDATE cvs SET `email` = ?, `fname`=?, `education`=?, `from`=?, `to`=?, `experience`=? WHERE cv_id = ?";
$data = array_values($data);
$stmt = $this->db->prepare($sql);
$stmt->execute($data);
那么,安全吗?我有数组并通过执行绑定(bind)所有值。我正在使用 PDO。
是真正的绑定(bind)还是必须使用像 php prepared statements with an array 这样的特殊函数
最佳答案
将所有参数作为数组传递给execute
,或者使用bindParam
或bindValue
,在安全性上没有区别。
我建议使用命名参数而不是 ?
,以避免与查询中列的特定顺序相关联。这使得修改查询变得更加容易。
关于php - PDO 执行数组 - 安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27661067/