Trong trường hợp các câu lệnh đã soạn sẵn, bạn phải sử dụng bindParam
bên ngoài vòng lặp, thông thường.
-
bindParam
là một bước duy nhất - thiết lập các biến bị ràng buộc là một bước có thể lặp lại (vòng lặp)
- bạn phải chạy
execute
cho mỗi lần lặp lại
Tôi đoán, một cái gì đó như vậy sẽ hoạt động:
$stmt = $pdoDB->prepare("INSERT INTO mytab (col, key) VALUES (:col, :key)");
// bind params (by reference)
$stmt->bindParams(":col", $col, PDO::PARAM_STR); //bind variable $col
$stmt->bindParams(":key", $key, PDO::PARAM_INT); //bind variable $key
$values = ['here','are','some','values'];
foreach ($values as $i => $value) {
$col = $value; //set col
$key = $i; //set key
$stmt->execute();
}