# ob_get_status

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

ob_get_status — 得到所有输出缓冲区的状态

### 说明

ob_get_status ([ bool `$full_status` = FALSE ] ) : array

ob_get_status()返回最顶层输出缓冲区的状态信息；或者如果`full_status`设为`TRUE`，返回所有有效的输出缓冲级别。

### 参数

`full_status`

  设为`TRUE` 返回所有有效的输出缓冲区级别的状态信息。如果设为 `FALSE` 或者没有设置，仅返回最 顶层输出缓冲区的状态信息。

### 返回值

如果调用时没有`full_status`参数，或者`full_status` = `FALSE` 将返回一个包含下面元素的简单数组：

    Array
    (
        [level] => 2
        [type] => 0
        [status] => 0
        [name] => URL-Rewriter
        [del] => 1
    )

Simple ob_get_status() results
Key | Value
--- | ---
level | 输出嵌套级别
type | PHP_OUTPUT_HANDLER_INTERNAL (0) 或者 PHP_OUTPUT_HANDLER_USER (1)
status | PHP_OUTPUT_HANDLER_START (0), PHP_OUTPUT_HANDLER_CONT (1) or PHP_OUTPUT_HANDLER_END (2) 三个之一
name | 起作用的输出处理程序的名字，或者是默认的输出处理程序的名字（如果没有设置的话）
del | 由ob_start()设置的删除标签（Erase-flag）

如果调用时`full_status` = `TRUE`，将返回一个数组，该数组的每个元素包含有效的输出缓冲区级别的状态信息。缓冲区的级别数用来当作数组的第一维数；每个元素自身是另一个数组，它持有该有效输出级别的状态信息。

    Array
    (
        [0] => Array
            (
                [chunk_size] => 0
                [size] => 40960
                [block_size] => 10240
                [type] => 1
                [status] => 0
                [name] => default output handler
                [del] => 1
            )

        [1] => Array
            (
                [chunk_size] => 0
                [size] => 40960
                [block_size] => 10240
                [type] => 0
                [buffer_size] => 0
                [status] => 0
                [name] => URL-Rewriter
                [del] => 1
            )

    )

完整的输出包含以下附加元素：

完整的ob_get_status() 结果
Key | Value
--- | ---
chunk_size | 由 ob_start()设置的Chunk size值
size | ...
blocksize | ...

### 参见

- ob_get_level() - 返回输出缓冲机制的嵌套级别
- ob_list_handlers() - 列出所有使用中的输出处理程序。