(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
ob_get_status — 得到所有输出缓冲区的状态
ob_get_status() 返回最顶层输出缓冲区的状态信息;或者如果 full_status
设为 true,返回所有有效的输出缓冲级别。
如果省略了 full_status 或传递
false,则返回简单的数组,该数组保存有关活动输出级别的状态信息。
如果 full_status 为 true,则返回数组,其中每个元素都包含活动输出缓冲区级别。输出级别用作顶级数组的
key,每个数组元素本身又是另一个数组,包含活动输出级别的状态信息。
如果未打开输出缓冲,则返回空数组。
| Key | 值 |
|---|---|
| name | 活动输出处理程序的名称(有关详细信息,请参阅 ob_list_handlers() 的返回值) |
| type |
0(内部处理程序)或
1(用户提供的处理程序)
|
| flags |
ob_start() 设置的 flag 掩码、输出处理程序的类型(见上文)和缓冲过程的状态(
PHP_OUTPUT_HANDLER_* 常量)。如果处理程序成功处理缓冲并且没有返回 false,则将会设置
PHP_OUTPUT_HANDLER_STARTED 和 PHP_OUTPUT_HANDLER_PROCESSED。如果处理程序在处理缓冲时失败或返回 false,则将设置
PHP_OUTPUT_HANDLER_STARTED 和 PHP_OUTPUT_HANDLER_DISABLED。
|
| level |
输出嵌套级别(从 0 开始)。注意 ob_get_level() 对于相同级别返回的值相差 1。ob_get_status()
的第一级为 0,ob_get_level() 的第一级为 1。
|
| chunk_size | 块大小(以字节为单位)。通过 ob_start() 设置或启用 output_buffering 并将其值设置为正整数 |
| buffer_size | 输出缓冲区字节大小 |
| buffer_used | 输出缓冲区中数据的字节大小(与 ob_get_length() 的整数返回值相同) |
示例 #1 当 full_status 是 false 的返回数组
Array
(
[name] => URL-Rewriter
[type] => 0
[flags] => 112
[level] => 2
[chunk_size] => 0
[buffer_size] => 16384
[buffer_used] => 1024
)
示例 #2 当 full_status 是 true 的返回数组
Array
(
[0] => Array
(
[name] => default output handler
[type] => 0
[flags] => 112
[level] => 1
[chunk_size] => 0
[buffer_size] => 16384
[buffer_used] => 2048
)
[1] => Array
(
[name] => URL-Rewriter
[type] => 0
[flags] => 112
[level] => 2
[chunk_size] => 0
[buffer_size] => 16384
[buffer_used] => 1024
)
)