Отображение вывода при циклизации в php

Можно ли отображать строку в браузере в бесконечном цикле? Это то, что я хочу:

while(1) { echo "should display these lines on browser while in infinite loop.<br>"; } 

Да, это возможно. Вы должны очистить вывод в браузере, если хотите, чтобы он появился сразу:

 while(1) { echo "should display these lines on browser while in infinite loop.<br>"; flush(); } 

Скорее всего, что бы вы ни пытались достичь, это не то, как вы должны это делать.

PHP в конечном итоге истечет, но не раньше, чем генерирует массивный HTML-документ, который будет отображаться в вашем браузере.

Обратите внимание на использование ob_flush(); чтобы убедиться, что php-выходы, и usleep(100000) чтобы успеть увидеть, что происходит.

 while(1) { echo "should display these lines on browser while in infinite loop.<br>"; usleep(100000); // debuging purpose ob_flush(); flush(); } 

Добавьте команду flush() после инструкции echo, она выведет выход в браузер. Обратите внимание, что браузеры обычно не начинают визуализировать, пока не достигнут определенного объема информации (около 0,5 КБ).

 while(1) { echo "should display these lines on browser while in infinite loop.<br>"; flush(); //Flush the output buffer } 

Если вы не хотите поместить flush (); после каждого эха вашего кода:

Установите это в свой php.ini:

implicit_flush = Выкл.

Или если у вас нет доступа к php.ini:

@ini_set ( 'implicit_flush', 1);