PHP循环插入数据库是指使用PHP脚本通过循环结构将多条数据插入到数据库中。这种操作通常用于批量处理数据,例如批量导入用户信息、商品数据等。
for
或foreach
循环逐条插入数据。以下是一个使用PDO预处理语句进行批量插入的示例:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$data = [
['name' => 'Alice', 'age' => 25],
['name' => 'Bob', 'age' => 30],
['name' => 'Charlie', 'age' => 35]
];
$stmt = $conn->prepare("INSERT INTO users (name, age) VALUES (:name, :age)");
foreach ($data as $row) {
$stmt->bindParam(':name', $row['name']);
$stmt->bindParam(':age', $row['age']);
$stmt->execute();
}
echo "New records created successfully";
} catch(PDOException $e) {
echo "Error: " . $e->getMessage();
}
$conn = null;
?>
try {
$conn->beginTransaction();
foreach ($data as $row) {
$stmt->bindParam(':name', $row['name']);
$stmt->bindParam(':age', $row['age']);
$stmt->execute();
}
$conn->commit();
echo "New records created successfully";
} catch(PDOException $e) {
$conn->rollBack();
echo "Error: " . $e->getMessage();
}
通过以上方法,可以有效解决PHP循环插入数据库时遇到的常见问题。
领取专属 10元无门槛券
手把手带您无忧上云