Подтвердить что ты не робот

Что означает while (true) {mean in PHP?

Я видел этот код, и я понятия не имею, что это значит.

while(true){
    echo "Hello world";
}

Я знаю, что такое цикл while, но что означает while (true)? Сколько раз он будет выполнен. Это не бесконечный цикл?

4b9b3361

Ответ 1

Да, это бесконечный цикл.

Явная версия будет

while (true == true)

Ответ 2

Хотя это бесконечный цикл, вы можете выйти из него, используя break. Это полезно, когда вы ожидаете чего-то, но вы точно не знаете количество итераций, которые доставят вас туда.

Ответ 3

Это действительно (как уже было сказано) бесконечный цикл и обычно содержит код, который заканчивается самим собой, используя оператор 'break'/'exit'.

Многие демоны используют этот способ, когда процесс PHP продолжает работать до тех пор, пока не изменится какая-либо внешняя ситуация. (т.е. убивая его, удаляя файл .pid/отправляя HUP и т.д.)

Ответ 4

Это действительно бесконечный цикл.

Ответ 5

Пожалуйста, обратитесь к документации PHP в настоящее время: http://www.w3schools.com/php/php_looping.asp

Цикл while выполняет блок кода, пока указанное условие истинно.

while (expression) {
    statement(s) 
} 

Оператор while вычисляет выражение, которое должно возвращать логическое значение. Если выражение принимает значение true, а оператор выполняет оператор в блоке while. в то время как оператор продолжает тестирование выражения и выполнение его блок, пока выражение не примет значение false.

Как следствие, код:

while (true) {
    statement(s)
}

будет выполнять инструкции неопределенно, потому что "true" является булевым выражением, которое, как вы можете ожидать, всегда верно.

Как уже упоминалось в @elzo-valugi, этот цикл можно прервать с помощью разрыва (или выхода):

while (true) {
    statement(s)
    if (condition) {
        break;
    }
}