1

有没有办法使用 php 获取 MYSQL 查询结果,从获取的第一条记录中的列中获取值,然后将该记录放回查询结果中,以便稍后在结果集上循环时,可以使用该记录再次?如果可以的话,我可以把记录重新放回第一个位置吗?

或者我应该从第一行返回我需要的值作为 MYSQL 例程中的单独变量。如果这将是更好的途径,有人可以给我一些关于如何返回查询结果集和单独变量的见解吗?我似乎也无法让它工作。

或者最好的方法是从查询结果集中创建我自己的数组,然后根据需要操作 mysql 结果集?如果上述两个选项之一是可能的,我试图远离这个只是为了减少创建该数组的步骤,否则我将继续这样做。

提前致谢。

4

2 回答 2

1

就在您需要再次循环之前,您可以使用mysql_data_seek($query, 0); Then 下一次调用fetch将再次成为第一行。

我没有亲自使用它,但这就是我从php手册中理解的:http: //us.php.net/manual/en/function.mysql-data-seek.php

于 2012-05-26T01:55:17.803 回答
0

我同意上面的答案,但只是以稍微不同的方式陈述:

在查询结果对象中回绕指针是没有意义的。您必须跟踪它的位置,而且很容易搞砸,并且不值得微小的速度增加。

制作整个数组的副本并使用键访问记录要好得多。更容易跟踪正在发生的事情。

于 2012-05-26T02:16:27.533 回答