我试图让在使用PDO更好的绑定值正确的方法,我有这样的代码:PHP PDO从阵列
$answers_count = count($answers);
$save_answers = $conn->prepare("INSERT INTO answers (answer, is_correct, question_id) VALUES (:answer, :is_correct, :question_id)");
for($i = 0; $i < $answers_count; $i++) {
$save_answers->bindParam(':answer', $answers[$i]);
$save_answers->bindParam(':is_correct', $answers_state[$i]);
$save_answers->bindParam(':question_id', $last_insert_id);
$save_answers->execute();
}
此代码的工作对我很好,但我已阅读,我应该叫方法只是一次,如果我理解正确,我必须准备一次sql语句并在绑定params后执行它?如果我使用方法一次插入一条新记录,它将起作用,但如果在for循环之外放置$save_answers->execute();
语句,则只会执行一条INSERT查询。
我在这里做错了什么,有没有其他更简单的方法来绑定数组,其中每次数组元素的数量可以不同。
预先感谢您提供给我的信息。
您准备一次查询,然后执行一个查询多次,只要你喜欢,把新的值到查询。 __Just就像你在做什么_ – RiggsFolly