-1

我想这个问题真的很简单,但我无法弄清楚我做错了什么。我有一个嵌套的 while 循环和两行。结果应该是:

ManU - Arsenal
Chelsea - Liverpool
ManCity - Everton
Tottenham - Fulham

但我得到的是:

LiverpoolEvertonFulham
ManU - Arsenal
Chelsea - 
ManCity -
Tottenham -

这是代码:

$row1 = array('ManU','Chelsea','ManCity', 'Tottenham');
$row2 = array('Arsenal','Liverpool','Everton', 'Fulham');

    $i = 0;
    $j = 0;

    echo "<table>";
    while($i < count($row1)){
        $a = $row1[$i];
        echo "<tr><td>".$a." - ";
        $i++;

        while($j < count($row2)){
            $b = $row2[$j];
            echo $b."</td></tr>";   
            $j++;
        }
    }
    echo "</table>";

问题是它必须是一个嵌套的while循环,因为实际上我正在使用SQL,这只是问题的简化版本(行而不是db表行),在另一个版本上问题是一样的,所以它是我认为不是 SQL 问题。请帮忙!

4

2 回答 2

1

你不需要 2 个循环

while($i < count($row1)){
        echo "<tr><td>".$row1[$i]." - ".$row2[$i]."</td></tr>";
        $i++;
}
于 2012-11-26T02:05:12.570 回答
0

reset($row2)秒后插入。您需要将循环重置为第一个并再次循环。在mysqli fetch_assoc()使用中data_seek(0)

于 2012-11-27T05:48:12.807 回答