Вызовите ob_implicit_flush () перед вашим циклом.
Обратите внимание, что это не является гарантией (буферы веб-сервера, прокси-буферы и веб-браузеры, которые отказываются от рендеринга, являются вашими врагами).Это МОЖЕТ помочь отобразить некоторые переводы строки (\ n), так как я помню, что есть браузеры, которые не будут перерисовывать, пока не получат полную строку.
Это не будет работать вообще, если вы используете буферизацию вывода (например,для сжатия с использованием gzip (если используемый модуль gzip использует буферизацию, что не редкость) или по другим причинам).