ob_get_status
出力バッファのステータスを取得する
説明
array ob_get_status(bool $full_status
= false
)
パラメータ
-
full_status
-
true
を指定すると、すべてのアクティブな出力バッファを返します。
false
を指定した場合、あるいは省略した場合は、
トップレベルの出力バッファのみを返します。
戻り値
full_status
が省略されるか、false
の場合、
出力レベルがアクティブなステータス情報を持つ配列を返します。
full_status
が true
の場合、
アクティブな出力バッファの階層をひとつの要素とする配列を返します。
出力レベルは配列のトップレベルのキーとして使われ、
それぞれの配列の要素自体は、
単一のアクティブな出力レベルのステータス情報を持つ配列になります。
出力バッファが有効になっていない場合は、
空の配列が返されます。
ob_get_status が返す配列の要素
Key | Value |
---|
name |
アクティブな出力ハンドラの名前
(詳細は ob_list_handlers の戻り値を参照下さい)
|
type |
0 (内部ハンドラ) あるいは
1 (ユーザー指定のハンドラ)
|
flags |
ob_start が設定したフラグのビットマスク。
出力ハンドラのタイプ(上記を参照) と、
バッファリング中のプロセス
(
PHP_OUTPUT_HANDLER_*
定数)。
ハンドラのバッファの処理が成功し、false を返さなかった場合、
PHP_OUTPUT_HANDLER_STARTED と
PHP_OUTPUT_HANDLER_PROCESSED が設定されます。
ハンドラのバッファの処理が失敗するか、false を返した場合、
PHP_OUTPUT_HANDLER_STARTED と
PHP_OUTPUT_HANDLER_DISABLED が設定されます。
|
level |
出力階層レベル(ゼロから始まります)。
ob_get_level が返す階層の値とは、
ひとつずれることに注意して下さい。
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
)
)
参考
- ob_get_level
- ob_list_handlers
- ob_get_length
- ob_start