Intereting Posts

PHP-эхо-контент при загрузке страницы

Поэтому я экспериментирую с PHP / Apache. Предположим, у меня есть этот код.

<div>DIV 1</div> <?php sleep(2); ?> <div>DIV 2</div> <?php sleep(2); ?> <div>DIV 3</div> <?php sleep(2); ?> <div>DIV 4</div> <?php sleep(2); ?> 

По какой-то причине на моем локальном веб-сервере apache все данные отображаются в браузере сразу, после того, как все 4 спящих () s были выполнены (8 секунд).

Однако, если я запустил его на сервере моего хоста, данные будут отображаться в браузере в реальном времени. Как и в … div1 появляется, через 2 секунды появляется div 2 и т. Д.

Почему это? Это какая-то настройка в Apache?

Solutions Collecting From Web of "PHP-эхо-контент при загрузке страницы"

Нет, это может быть настройка в php.

В вашем локальном сервере функция output_buffering включена в файле php.ini.

Вы можете отключить его, установив:

 output_buffering = off 

Чтобы убедиться, что контент отправляется в браузер каждый раз, когда используется эхо-подобный оператор, добавьте:

 implicit_flush = on 

Вы также можете установить размер буфера, предоставив output_buffering значение.

 output_buffering = 4096 

здесь размер буфера будет 4 КБ.

Буферизация вывода сообщает, что php хранит в памяти все данные, которые должны быть отправлены в браузер, до тех пор, пока она не проверит команду flush () в вашем коде, буфер окажется заполненным, или это конец скрипта.

Вот полная ссылка для выходного буфера из php.net: php output buffer