首页 > 数据库 > mysql教程 > 为什么 mysqli_fetch_array() 重复使用时失败,如何修复?

为什么 mysqli_fetch_array() 重复使用时失败,如何修复?

Patricia Arquette
发布: 2024-12-03 04:33:12
原创
971 人浏览过

Why Does mysqli_fetch_array() Fail on Repeated Use, and How Can I Fix It?

解决 mysqli_fetch_array() 困境

尝试在同一结果集上多次使用 mysqli_fetch_array() 可能会导致数据无法访问。出现这种情况是因为 mysqli_fetch_array() 增量消耗结果。

数据操作分离

要避免此问题,请将数据操作与输出分开。这是一种改进的方法:

1.数据选择

$db_res = mysqli_query($db_link, $sql);
$data = array();
while ($row = mysqli_fetch_array($db_res, MYSQLI_ASSOC)) {
    $data[] = $row;
}
登录后复制

或者,在 PHP 5.3 中使用 fetch_all() :

$db_res = mysqli_query($db_link, $sql);
$data = $db_res->fetch_all(MYSQLI_ASSOC);
登录后复制

此步骤将整个结果集检索到数组 $data 中。

2。数据使用

现在,您可以多次迭代$data,而不会影响结果集。

顶行

foreach ($data as $row) {
登录后复制

以上是为什么 mysqli_fetch_array() 重复使用时失败,如何修复?的详细内容。更多信息请关注PHP中文网其他相关文章!

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