Який висновок буферизується?

Користувальницькі буфери виведення PHP після запуску повністю буферизують виведення до тих пір, поки вони не будуть вимкнені або скрипт не завершить роботу. Висновок у контексті буфера виведення PHP — це все, що PHP відобразив або відправив назад в браузер. З практичної точки зору, висновок – це дані ненульової довжини, які:

  • написані за межами тегів<?php ?>
  • виводять мовні конструкції і функції, явна мета яких - виведення змін або рядків, як наприклад:echo print printf() var_dump() var_export() vprintf()
  • виводять функції, мета яких - збирання та виведення даних або інформації про запущений скрипт або PHP, як наприклад:debug_print_backtrace() phpcredits() phpinfo() ReflectionExtension::info()
  • виводить PHP за неперехопленого виключення або необробленої помилки (за умови, що включені директивиdisplay_errors і error_reporting) .
  • записують у потікphp://output

Зауваження: Дані, які записуються відразу в потік виводу (stdout) або передаються у функцію SAPI з схожою функціональністю, не будуть захоплені користувальницькими буферами виводу. У це включено запис даних стандартний потік виведення (stdout) функцією fwrite() або надсилання заголовків функціями header() або setcookie()