как сделать пока цикл начнёт считать с 1 - PullRequest
0 голосов
/ 19 января 2019

У меня есть цикл while, который выглядит следующим образом:

$condition2 = true;
$page = 1;

while($condition2){

    $page++;
    echo $page;



    if($page == 3){
        $condition2 = false;
    }
}

Как вы видите, я повторяю страницу здесь.Но он начинает отсчет с 2, затем переходит к 3 и т. Д. Я хочу, чтобы он начал отсчет с 1. Таким образом, результат будет 1 -2 -3.

я попытался установить значение по умолчанию вне цикла 0. Это приводит к бесконечному циклу.

Ответы [ 5 ]

0 голосов
/ 19 января 2019

Вы также можете сделать это

$condition2 = true;
$page = 1;
while($condition2){
    if($page == 3){
        $condition2 = false;
    }
    echo $page;
    $page++;
}
0 голосов
/ 19 января 2019

Что если вместо этого вы увеличите счетчик в конце?

$condition2 = true;
$page = 1;

while($condition2){

    echo $page;

    if($page == 3){
        $condition2 = false;
    }
    $page++;
}
0 голосов
/ 19 января 2019

Объедините эхо и инкремент вместе:

echo $page++;

Вам также придется изменить условие выхода:

$page > 3

Таким образом, весь код будет

$condition2 = true;
$page = 1;

while($condition2){

    echo $page++;

    if($page > 3){
        $condition2 = false;
    }

}

Вы можете избавиться от if, назначив прямое значение $ condition2:

$condition2 = true;
$page = 1;

while($condition2){

    echo $page++;
    $condition2 = ($page > 3);

}

И вы можете еще больше сократить его, сделав цикл зависимым от $ page, например так:

$page = 1;

while($page <= 3){

    echo $page++;

}

Но если вы хотите использовать $ page для чего-то, кроме простого отображения его в цикле, вам придется немного изменить это, поэтому вы не изменяете его, пока пытаетесь его использовать:

$page = 0;

while($page++ < 3) { 

    echo $page; 
    //use $page for something

};
0 голосов
/ 19 января 2019

Либо установите $page в ноль, изменив:

$page = 1;

на:

$page = 0;

Или выведите переменную перед добавлением 1 к ней:

$condition2 = true;
$page = 1;

while($condition2){

    echo $page;
    $page++



    if($page == 3){
        $condition2 = false;
    }
}
0 голосов
/ 19 января 2019

Вы увеличиваете переменную страницы слишком рано.Добавьте страницу ++ прямо в конце цикла

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...