php 提供了批量插入多条数据的几种方法,包括:1. 数组插入;2. 预处理语句;3. 批量插入扩展。这些方法可以提高性能,防止 sql 注入,并允许同时插入多条数据。
用 PHP 批量插入多条数据
PHP 提供了几种方法来批量插入多条数据到数据库中:
1. 数组插入
最简单的方式是使用 PHP 数组将数据组织成键值对,然后将其作为参数传递给 insert() 函数:
$data = [ ['name' => 'John Doe', 'email' => 'john@example.com'], ['name' => 'Jane Smith', 'email' => 'jane@example.com'], ['name' => 'Bob Jones', 'email' => 'bob@example.com'], ]; $stmt = $pdo->prepare('INSERT INTO users (name, email) VALUES (:name, :email)'); foreach ($data as $row) { $stmt->execute($row); }
登录后复制
2. 预处理语句
预处理语句允许在插入之前指定占位符,从而提高性能并防止 SQL 注入:
$stmt = $pdo->prepare('INSERT INTO users (name, email) VALUES (?, ?)'); $names = ['John Doe', 'Jane Smith', 'Bob Jones']; $emails = ['john@example.com', 'jane@example.com', 'bob@example.com']; for ($i = 0; $i bindParam(1, $names[$i]); $stmt->bindParam(2, $emails[$i]); $stmt->execute(); }
登录后复制
3. 批量插入扩展
PHP 提供了一个名为 PDOStatement::executeBatch() 的扩展,可用于批量插入多条数据:
$data = [ ['name' => 'John Doe', 'email' => 'john@example.com'], ['name' => 'Jane Smith', 'email' => 'jane@example.com'], ['name' => 'Bob Jones', 'email' => 'bob@example.com'], ]; $stmt = $pdo->prepare('INSERT INTO users (name, email) VALUES (:name, :email)'); $stmt->executeBatch($data);
登录后复制
以上就是如何用php添加多条数据的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:momo,转转请注明出处:https://www.dingdanghao.com/article/679882.html