<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/outcontrol.user-level-output-buffers.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ru',
  ),
  'this' => 
  array (
    0 => 'outcontrol.flags-passed-to-output-handlers.php',
    1 => 'Флаги, передаваемые обработчикам вывода',
    2 => 'Флаги, передаваемые обработчикам вывода',
  ),
  'up' => 
  array (
    0 => 'outcontrol.user-level-output-buffers.php',
    1 => 'Пользовательские буферы вывода',
  ),
  'prev' => 
  array (
    0 => 'outcontrol.working-with-output-handlers.php',
    1 => 'Работа с обработчиками вывода',
  ),
  'next' => 
  array (
    0 => 'outcontrol.output-handler-return-values.php',
    1 => 'Значения, которые возвращает обработчик вывода',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ru',
    'path' => 'reference/outcontrol/user-level-output-buffers.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="outcontrol.flags-passed-to-output-handlers" class="section">
  <h2 class="title">Флаги, передаваемые обработчикам вывода</h2>
  <p class="para">
   Битовая маска, которую передали во второй параметр
   обработчика вывода — <code class="parameter">phase</code> даёт информацию о вызове обработчика.
  </p>
  <blockquote class="note"><p><strong class="note">Замечание</strong>: 
   <span class="simpara">
    В битовую маску разрешается включать больше одного флага,
    а для проверки того, установлен ли флаг,
    указывают побитовый оператор <code class="literal">&amp;</code>.
   </span>
  </p></blockquote>
  <div class="warning"><strong class="warning">Внимание</strong>
   <p class="simpara">
    Значение флага <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-write">PHP_OUTPUT_HANDLER_WRITE</a></code></strong> и его псевдонима
    <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-cont">PHP_OUTPUT_HANDLER_CONT</a></code></strong> равно <code class="literal">0</code>,
    поэтому установили ли значение, определяют только
    <a href="language.operators.comparison.php" class="link">операторами равенства</a>
    (<code class="literal">==</code> или <code class="literal">===</code>).
   </p>
  </div>
  <p class="para">
   PHP устанавливает следующие флаги на конкретном этапе жизненного цикла обработчика:
   <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-start">PHP_OUTPUT_HANDLER_START</a></code></strong> —
   при первом вызове обработчика.
   Флаг <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-final">PHP_OUTPUT_HANDLER_FINAL</a></code></strong>
   или его псевдоним <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-end">PHP_OUTPUT_HANDLER_END</a></code></strong> —
   при последнем вызове обработчика,
   т. е. он отключается. PHP также установит этот флаг,
   когда буферы выключаются процессом завершения работы PHP.
  </p>
  <p class="para">
   Конкретный вызов обработчика устанавливает следующие флаги:
   <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-flush">PHP_OUTPUT_HANDLER_FLUSH</a></code></strong> —
   при запуске обработчика вызовом функции <span class="function"><a href="function.ob-flush.php" class="function">ob_flush()</a></span>.
   Флаг <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-write">PHP_OUTPUT_HANDLER_WRITE</a></code></strong>
   или его псевдоним <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-cont">PHP_OUTPUT_HANDLER_CONT</a></code></strong> —
   когда размер содержимого обработчика равен или превышает размер буфера,
   а обработчик вызвали во время автоматической очистки буфера.
   Флаг <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-flush">PHP_OUTPUT_HANDLER_FLUSH</a></code></strong> —
   когда обработчик запустили вызовом функций <span class="function"><a href="function.ob-clean.php" class="function">ob_clean()</a></span>,
   <span class="function"><a href="function.ob-end-clean.php" class="function">ob_end_clean()</a></span> или <span class="function"><a href="function.ob-get-clean.php" class="function">ob_get_clean()</a></span>.
   При вызове функции <span class="function"><a href="function.ob-end-clean.php" class="function">ob_end_clean()</a></span> или <span class="function"><a href="function.ob-get-clean.php" class="function">ob_get_clean()</a></span>
   также устанавливается флаг <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-final">PHP_OUTPUT_HANDLER_FINAL</a></code></strong>.
  </p>
  <blockquote class="note"><p><strong class="note">Замечание</strong>: 
   <span class="simpara">
    При вызове функции <span class="function"><a href="function.ob-end-flush.php" class="function">ob_end_flush()</a></span> или <span class="function"><a href="function.ob-get-flush.php" class="function">ob_get_flush()</a></span>
    флаг <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-final">PHP_OUTPUT_HANDLER_FINAL</a></code></strong> устанавливается,
    а флаг <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-flush">PHP_OUTPUT_HANDLER_FLUSH</a></code></strong> — нет.
   </span>
  </p></blockquote>
 </div><?php manual_footer($setup); ?>