PHP эхо до функции сна, не работает

Я хочу, чтобы выходное эхо в браузере (каждый раз) перед выполнением функции сна.

следующий код не работает

set_time_limit(0); ob_implicit_flush(1); ob_start(); echo "Start<Br>"; ob_flush(); for($i=0;$i<10;$i++){ $randSlp=rand(1,3); echo "Sleeping for ".$randSlp." second. "; ob_flush(); sleep($randSlp); } ob_end_flush(); 

если функция str_repeat чем в браузере
Первый раз: Начните спящий на 1 секунду. Спящий на 3 секунды.
Второй раз: спать 2 секунды. Спящий на 2 секунды.

и продолжить …

возможно echo один за другим без функции str_repeat (), почему вывод не отображается каждый раз.

Попробуйте выполнить следующий код и его работу.

 header( 'Content-type: text/html; charset=utf-8' ); header("Cache-Control: no-cache, must-revalidate"); header ("Pragma: no-cache"); set_time_limit(0); ob_implicit_flush(1); //apache_setenv('no-gzip', 1); //ini_set('zlib.output_compression', 0); //ini_set('implicit_flush', 1); for ($i = 0; $i < 10; $i++) { $randSlp=rand(1,3); echo "Sleeping for ".$randSlp." second. ";; sleep(1); if(ob_get_level()>0) ob_end_flush(); } 

даже выходной буфер (ob_ * функции) не обязательно дает вывод в браузер напрямую.

Сначала попробуйте вызвать flush() до или после ob_flush() .

Во-вторых, посмотрите, например, включено ли mod_gzip или zlib.output_compression. Это также будет буферизовать весь вывод.

Если вы используете сервер IIS, а не Apache, в IIS также могут быть настройки для проверки.