Php 嵌套for循环,提供不相关的输出

Php 嵌套for循环,提供不相关的输出,php,for-loop,nested-loops,Php,For Loop,Nested Loops,我想将值从1打印到user\u input\u limit。但在每4个值之后。应该有一个换行符,为此我使用下面的代码,这是不工作的。它在第二次迭代中重复+1中的值 我的代码:- if(is_numeric($_GET['num'])) { $num = ceil($_GET['num']/4); for($i=1;$i<=$num;$i++) { echo '<div class="hello">'; for($j=$i;$j

我想将值从
1
打印到
user\u input\u limit
。但在每4个值之后。应该有一个换行符,为此我使用下面的代码,这是不工作的。它在第二次迭代中重复
+1
中的值

我的代码:-

if(is_numeric($_GET['num'])) {
    $num = ceil($_GET['num']/4);

    for($i=1;$i<=$num;$i++) {

       echo '<div class="hello">';

        for($j=$i;$j<=$i+3;$j++) {
            echo $j.", ";
        }

       echo '</div>';

        echo '<br />';
    }
}
我的内部for循环错误,我得到的输出如下:-

我得到了什么:-

1,  2,  3,  4, 
2,  3,  4,  5, 
3,  4,  5,  6, 
有人能修正我的算法吗


谢谢,不要使用内部循环

if(is_numeric($_GET['num'])) {
    for($i=1;$i<=$_GET['num'];$i++) {
        if ($i % 4 == 1) {
            echo '<div class="hello">';
        }
        echo $i.", ";
        if ($i % 4 == 0 || $i == $_GET['num']) {
            echo '</div>';
        }
    }
}
if(是数值($\u GET['num'])){
对于($i=1;$i为什么不

if(is_numeric($_GET['num'])) {
    $num = intval($_GET['num']);
    for($i=1;$i<=$num;$i++) {
        echo "$i, ";
        if(!($i%4)) echo '<br />';
        }
    }
if(是数值($\u GET['num'])){
$num=intval($_GET['num']);
对于($i=1;$i)分割字符串:

if(is_numeric($_GET['num'])) {
    echo '<div class="hello">';

    for($i=1;$i<=$_GET['num'];$i++) {
        echo $i . ($i < $_GET['num'] ? ', ' : '');

        if ($i % 4 == 0) {
            echo '</div>' . ($i < $_GET['num'] ? '<div class="hello">' : '');
        }
    }

    echo $_GET['num'] % 4 ? '</div>' : '';
}
if(是数值($\u GET['num'])){
回声';

对于($i=1;$iBe小心,您为($j=1;$j)编写了
for($j=1;$j)修复了我的打字错误。谢谢
现在您的div文件真的需要吗?是的:)…因为我没有用页边底部来设计它的样式…自从上次我做web开发已经有一段时间了,但是
display:block
不是你想要做的吗?我认为对一个变量使用
是数字的
intval
是有点过度的工作。))@geomagas,兄弟,我打字时漏了整个div。更新了我的代码。ThanksOh,拜托!那是一个完全不同的问题!事实上我打字时漏了整个div。更新了我当前的代码。Thanksbro你是天才:)对于num==4,您可能会得到意外的结果。另外,我假设您的最后一个
实际上是
更新和测试的。))顺便说一句,如果它是最后一个num,则不会输出逗号。而不是将
$\u GET['num']%4
的结果放入变量并使用三元运算符。为什么不直接编写
if($\u GET['num']%4)echo“”;
结尾?关于逗号,OP希望根据预期的输出示例使用它。:@Maxime,当我编写它时,我想我会多次使用它。:)删除。谢谢你的观点。
if(is_numeric($_GET['num'])) {
    $num = intval($_GET['num']);
    for($i=1;$i<=$num;$i++) {
        echo "$i, ";
        if(!($i%4)) echo '<br />';
        }
    }
if(is_numeric($_GET['num'])) {
    echo '<div class="hello">';

    for($i=1;$i<=$_GET['num'];$i++) {
        echo $i . ($i < $_GET['num'] ? ', ' : '');

        if ($i % 4 == 0) {
            echo '</div>' . ($i < $_GET['num'] ? '<div class="hello">' : '');
        }
    }

    echo $_GET['num'] % 4 ? '</div>' : '';
}