gpt4 book ai didi

php - 复制 mysql 结果循环两次

转载 作者:行者123 更新时间:2023-11-29 04:38:32 25 4
gpt4 key购买 nike

我需要循环 mysql 结果两次。所以我决定将其结果复制到一个新变量中:

$result = mysql_query($query, $db);
$result_copy = $result;

然后我循环我的$result并打印数据。
但是当我尝试循环 $result_copy 时,while 将不起作用。
我可以使用 mysql_data_seek($result_copy, 0) 解决问题,但我想了解为什么副本不会从 [0] 开始。
提前致谢!
----------------------
我正在发布我的代码的更长版本:

$query = [...];
$result = mysql_query($query, $db);
$result_copy = $result;
while ($row = mysql_fetch_array($result)) {
[...] // this outputs the data
}
while ($row = mysql_fetch_array($result_copy)) {
[...] // No data are shown here. Pointer is at the end of $result_copy
}

最佳答案

数据行由 mysql_fetch_array($result) 语句检索。如果您复制 $result,您只是在复制句柄(资源 ID),而不是数据。

因此,您要么重复 while 循环,要么重复您在 while 循环中执行的操作:

<?php

$query = [...];
$result = mysql_query($query, $db);
// $result_copy = $result;

while ($row = mysql_fetch_array($result)) {
// We got a row here ...
foreach($row as key => $value)
[...] // Do this ...
[...] // Do that again ...
}
}

?>

关于php - 复制 mysql 结果循环两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35288712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com