首页 > 数据库 > mysql教程 > 如何使用PHP高效、安全地将多个值插入MySQL?

如何使用PHP高效、安全地将多个值插入MySQL?

Patricia Arquette
发布: 2024-12-20 00:28:10
原创
749 人浏览过

How Can I Efficiently and Securely Insert Multiple Values into MySQL Using PHP?

使用 PHP 和 MySQLi 高效、安全地插入多个值

要安全地插入多个值,避免 SQL 注入和堆栈溢出,请考虑以下事项

方法 1:使用Prepared 增强循环语句

维持当前的方法,但进行一些修改以提高效率:

$stmt = $mysqli->prepare("INSERT INTO table (link) VALUES (?)");
$stmt->bind_param("s", $one);

foreach ($array as $one) {
    $stmt->execute();
}
登录后复制

此方法在循环外初始化准备好的语句,提高性能。

方法 2:基于事务的方法

为了进一步优化,利用事务:

$stmt = $mysqli->prepare("INSERT INTO table (link) VALUES (?)");
$stmt->bind_param("s", $one);

$mysqli->query("START TRANSACTION");
foreach ($array as $one) {
    $stmt->execute();
}
$mysqli->query("COMMIT");
登录后复制

通过将插入包装在事务中,利用了 MySQL 的缓冲系统,从而显着提高了速度。

测试和结果

在 10,000 次迭代的性能测试中,发现基于事务的方法大大提高了性能更快:

  • 无交易:226秒
  • 有交易:2秒

因此大规模推荐使用基于交易的方式插入操作。

以上是如何使用PHP高效、安全地将多个值插入MySQL?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板