Поведение этих функций зависит от установок в php.ini.
Имя | По умолчанию | Место изменения | Список изменений |
---|---|---|---|
output_buffering | "0" | PHP_INI_PERDIR | |
output_handler | NULL | PHP_INI_PERDIR | |
implicit_flush | "0" | PHP_INI_ALL | |
url_rewriter.tags | "a=href,area=href,frame=src,form=,fieldset=" | PHP_INI_ALL | До PHP 7.1.0 использовалась для установки перезаписи сессии "trans sid". С PHP 7.1.0 используется только output_add_rewrite_var(). |
url_rewriter.hosts | $_SERVER['HTTP_HOST'] используется по умолчанию. |
PHP_INI_ALL | Доступно с PHP 7.1.0 |
Краткое разъяснение конфигурационных директив.
output_buffering
bool/integer
Вы можете разрешить буферизацию вывода для всех файлов, установив эту директиву в 'On'. Если вы хотите ограничить размер буфера до определённого размера, вы можете установить не 'On', а максимальное количество байт в этой директиве (например, output_buffering=4096). Эта директива всегда отключена в PHP-CLI.
output_handler
string
Вы можете перенаправить весь вывод вашего скрипта в функцию. Для примера, если вы установите output_handler в mb_output_handler(), то кодировка символов прозрачно преобразуется в соответствии с указанной кодировкой. Настройка любого обработчика вывода автоматически включает буферизацию вывода.
Замечание:
Вы не можете использовать вместе mb_output_handler() с ob_iconv_handler(), и вы не можете использовать вместе ob_gzhandler() и zlib.output_compression.
Замечание:
Только встроенные функции могут использоваться с этой директивой. Для функции, определённой пользователем, используйте ob_start().
implicit_flush
bool
false
по умолчанию. Изменение значения на true
указывает PHP не сохранять
данные в буфер, а после каждого отправленного блока автоматически
отправлять данные в выходной слой. Это эквивалентно вызову PHP-функции
flush() после каждого вызова
print или echo для
каждого HTML
-блока.
При использовании PHP в веб-среде, включение этой опции
приведёт к серьёзной потере производительности, поэтому
рекомендуется использовать её только для отладки. Это значение
по умолчанию имеет true
при работе в CLI SAPI
.
Сморите также ob_implicit_flush().
url_rewriter.tags
определяет, какие HTML-теги
будут перезаписаны значениями output_add_rewrite_var().
По умолчанию
a=href,area=href,frame=src,input=src,form=
form
является специальным тегом. <input hidden="session_id" name="session_name">
добавляется как переменная формы.
Замечание: До PHP 7.1.0 надо было использовать url_rewriter.tags для указания session.trans_sid_tags. Начиная с PHP 7.1.0,
fieldset
больше не рассматривается как специальный тег.
url_rewriter.hosts
string
url_rewriter.hosts
указывает, какие хосты перезаписываются для включения
значений output_add_rewrite_var().
По умолчанию используется $_SERVER['HTTP_HOST']
. Несколько хостов можно указать
перечислив их через запятую, между хостами не должно быть пробелов. То есть
php.net,wiki.php.net,bugs.php.net