php - 无法在嵌套 foreach 循环中多次循环遍历 mysql 结果

标签 php mysql

我发现我无法多次循环访问一组 mysql 结果。这是我不知道的正常现象吗?

我有 2 个嵌套的 foreach 循环,如下所示:

foreach ($items as $item) {
    echo $item." ---------------<br>";
    // loop through set of results
    foreach ($mysqlresults as $result) {
        // loop through result
        echo $result." ^^^^^^^^^^<br>";
        while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
            print_r($row);
            echo "<br>";
        }
    }
}

输出:

item 1 ---------------
ResourceID#1 ^^^^^^^
row 1 data
row 2 data
row 3 data
row 4 data
ResourceID#2 ^^^^^^^
row 1 data
row 2 data
row 3 data
row 4 data
ResourceID#3 ^^^^^^^
row 1 data
row 2 data
row 3 data
row 4 data
item 2 ---------------
item 3 ---------------
item 4 ---------------
item 5 ---------------

是否有充分的理由导致它无法重新循环结果,或者我做错了什么?

谢谢。

最佳答案

不能,因为 mysql_fetch_array 在结果中移动光标。您可以使用 mysql_data_seek($result, 0) 来倒回。

关于php - 无法在嵌套 foreach 循环中多次循环遍历 mysql 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13180108/

相关文章:

PHP 实时通知(推送器?)

php - 如果有假期,则计算结束日期,将日期向前推进

php - 在后台搜索产品,例如输入 >=3

php mysql where 子句使用日期

PHP 重定向根本不起作用

php - WooCommerce 的 WCFM 市场 - 忽略当前产品

php - 如何在新查询中使用分解数据?

php - 哪个 MySql 行更快 :

PHP MySQL : User selects the fields to create mysql query array variable

mysql - 选择 where 子句中的条件