PHP / MYSQL while循环短路

时间:2016-03-26 09:30:56

标签: while-loop

我有下一个PHP代码:

$nr = 1;
$baza1 = mysql_query("SELECT * FROM table LIMIT 10");
$rand = mysql_fetch_array($baza);
while($rand = mysql_fetch_array($baza)) 
{
echo $nr." | ".$rand['rezultat'];
$nr++;
}

此代码返回输出:

NR | RESULT
1. | Result 1
2. | Result 2
3. | Result 3
4. | Result 4
5. | Result 5
6. | Result 6
7. | Result 7
8. | Result 8
9. | Result 9
10.| Result 10

我想先退回5行然后打破然后结果没有。 10,像这样:

NR | RESULT
1. | Result 1
2. | Result 2
3. | Result 3
4. | Result 4
5. | Result 5
.. | ..
10.| Result 10

1 个答案:

答案 0 :(得分:0)

我认为在SQL查询中检索前10个结果是正确的方法,尽管您只想显示某些结果集。在下面的答案中,我添加了有条件地仅打印1-5和10记录的逻辑。

$nr = 1;
$baza1 = mysql_query("SELECT * FROM table LIMIT 10");
$rand = mysql_fetch_array($baza);
while($rand = mysql_fetch_array($baza)) {
    if ($nr <= 5 || $nr == 10) {
        echo $nr." | ".$rand['rezultat'];
    }
    else if ($nr == 6) {
        echo ".. | ..";
    }
    $nr++;
}