传递给输出处理器的第二个phase参数的位掩码提供了有关处理器调用的信息。
注意: 位掩码可以包含多个标志,应使用按位
&运算符检查是否设置了标志。
PHP_OUTPUT_HANDLER_WRITE及其别名PHP_OUTPUT_HANDLER_CONT的值为0,因此只能使用等号运算符(==或===)来确定它是否已设置。
以下标志在处理程序生命周期的特定阶段设置:PHP_OUTPUT_HANDLER_START在首次调用处理程序时设置。PHP_OUTPUT_HANDLER_FINAL或其别名PHP_OUTPUT_HANDLER_END在最后一次调用处理程序时设置,即它被关闭时。当缓冲区被 PHP 的关闭进程关闭时,也会设置此标志。
以下标志由处理程序的特定调用设置:PHP_OUTPUT_HANDLER_FLUSH在通过调用ob_flush()调用处理程序时设置。PHP_OUTPUT_HANDLER_WRITE或其别名PHP_OUTPUT_HANDLER_CONT在其内容大小等于或超过缓冲区大小时设置,并且在缓冲区被自动刷新时调用处理程序。PHP_OUTPUT_HANDLER_FLUSH在通过调用ob_clean()、ob_end_clean()或ob_get_clean()调用处理程序时设置。当调用ob_end_clean()或ob_get_clean()时,也会设置PHP_OUTPUT_HANDLER_FINAL。
注意: 当调用ob_end_flush()或ob_get_flush()时,会设置
PHP_OUTPUT_HANDLER_FINAL,但不会设置PHP_OUTPUT_HANDLER_FLUSH。