Какой вывод буферизуется?

Пользовательские буферы вывода 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().

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top