如何重置MySQL资源的PHP指针?
可能重复:如何重置MySQL资源的PHP指针?,php,Php,可能重复: 我的PHP脚本中有2个while循环,用于处理数据库中的数据列表 $results = mysql_query("SELECT * FROM myTable"); while ($result = mysql_fetch_object($results)) { // do stuff } reset($results); while ($result = mysql_fetch_object($results)) { // do some more stuff
我的PHP脚本中有2个while循环,用于处理数据库中的数据列表
$results = mysql_query("SELECT * FROM myTable");
while ($result = mysql_fetch_object($results)) {
// do stuff
}
reset($results);
while ($result = mysql_fetch_object($results)) {
// do some more stuff
}
但是,reset()函数不是在MySQL资源中重置我的指针。事实上,它会产生一个错误:
“警告:reset()[function.reset]:传递的变量不是数组或
对象位于/home/cs179_team13/public_html/timeTests/results.php中
第133行。”
为什么??如何为MySQL资源重置PHP指针?您可以使用函数
MySQL\u data\u seek
bool mysql\u data\u seek(资源$result,int$row\u number)
更多信息请访问。您不需要这种丑陋的方式。
给自己准备一个数组
$data = sql_to_arr("SELECT * FROM myTable");
foreach ($data as $row) {
// do stuff
}
foreach ($data as $row) {
// do stuff
}
foreach ($data as $row) {
// do stuff
}
这是处理数据更方便的方法传递与0一起返回的结果集
mysql_data_seek($resultset, 0) ;//reset result set
无法重置
资源
类型-它不是数组。再问一遍,谢谢。但是,我是否可以避免再次执行查询?我不想重复我自己。mysql\u data\u seek($results,0)代码>我不想重复我自己的话-您可以将查询放入字符串并使用它两次,当然可以吗?