фича, или я чего-то не дочитал

  • Автор темы Автор темы SA739
  • Дата начала Дата начала

SA739

Cogito, ergo sum
фича, или я чего-то не дочитал

PHP:
if (!empty($_POST)) {
// code here
echo 1;
header("Location:.");
}
спокойненько отрабатывает код и шлет хидер.
а как-же дело с ворнингами напредмет Header already sent bla bla bla ?
Apache/1.3.29 (Unix) AuthMySQL/2.20 PHP/4.3.4
 
Note: In PHP 4, you can use output buffering to get around this problem, with the overhead of all of your output to the browser being buffered in the server until you send it. You can do this by calling ob_start() and ob_end_flush() in your script, or setting the output_buffering configuration directive on in your php.ini or server configuration files.
 
Romantik
спасибо, ясно..

и тогда вопрос по ходу: минусы этой опции? (если конечно существуют и более-менее весомы)
 
Сразу первый минус что на ум приходит, это то, что выплевывается все после окончания работы скрипта или
по ob_end_flush() .

А скрипт может долго выполнятся и выплевывать информацию частями...

Например поиск.
 
падает скорость если стоит значение или true
наоборот повышается
буферизация вывода является одним из способов увеличения производительности, при условии что ты выплеваешь в аутпут разумные количества данных
 
чтоб вы знали, апач буфферизует данные и отправляет по 8K за раз, если явно не сказать, что надо вываливать сколько есть.

увеличение времени работы скрипта с буфферизацией есть, но мизерное, вы бы лучше об алгоритмах думали.
 
Сверху