reference/outcontrol/functions/ob-get-status.xml
af7044e82ac0abe745ce3dfe2169e69a7e8e342f
...
...
@@ -39,81 +39,142 @@
39
39
<refsect1 role="returnvalues">
40
40
&reftitle.returnvalues;
41
41
<para>
42
-
If called without the <parameter>full_status</parameter> parameter
43
-
or with <parameter>full_status</parameter> = &false; a simple array
44
-
with the following elements is returned:
45
-
<informalexample>
42
+
If <parameter>full_status</parameter> is omitted or &false; a simple array
43
+
holding status information on the active output level is returned.
44
+
</para>
45
+
<para>
46
+
If <parameter>full_status</parameter> is &true; an array
47
+
with one element for each active output buffer level is returned.
48
+
The output level is used as key of the top level array and each array
49
+
element itself is another array holding status information
50
+
on one active output level.
51
+
</para>
52
+
<para>
53
+
An empty array is returned if output buffering is not turned on.
54
+
</para>
55
+
<para>
56
+
<segmentedlist>
57
+
<title><function>ob_get_status</function> return array elements</title>
58
+
<segtitle>Key</segtitle><segtitle>Value</segtitle>
59
+
<seglistitem>
60
+
<seg>name</seg>
61
+
<seg>
62
+
Name of active output handler (see the return values of
63
+
<function>ob_list_handlers</function> for details)
64
+
</seg>
65
+
</seglistitem>
66
+
<seglistitem>
67
+
<seg>type</seg>
68
+
<seg>
69
+
<literal>0</literal> (internal handler) or
70
+
<literal>1</literal> (user supplied handler)
71
+
</seg>
72
+
</seglistitem>
73
+
<seglistitem>
74
+
<seg>flags</seg>
75
+
<seg>
76
+
Bitmask of flags set by <function>ob_start</function>,
77
+
the type of output handler (see above)
78
+
and the status of the buffering process
79
+
(<link linkend="outcontrol.constants.flags-returned-by-handler">
80
+
<constant>PHP_OUTPUT_HANDLER_<replaceable>*</replaceable></constant>
81
+
</link> constants).
82
+
If the handler successfully processed the buffer and did not return &false;,
83
+
<constant>PHP_OUTPUT_HANDLER_STARTED</constant> and
84
+
<constant>PHP_OUTPUT_HANDLER_PROCESSED</constant> will be set.
85
+
If the handler failed while processing the buffer or returned &false;,
86
+
<constant>PHP_OUTPUT_HANDLER_STARTED</constant> and
87
+
<constant>PHP_OUTPUT_HANDLER_DISABLED</constant> will be set.
88
+
</seg>
89
+
</seglistitem>
90
+
<seglistitem>
91
+
<seg>level</seg>
92
+
<seg>
93
+
Output nesting level (zero based). Note that the value returned for the
94
+
same level by <function>ob_get_level</function> is off by one.
95
+
The first level is <literal>0</literal> for <function>ob_get_status</function>,
96
+
and <literal>1</literal> for <function>ob_get_level</function>.
97
+
</seg>
98
+
</seglistitem>
99
+
<seglistitem>
100
+
<seg>chunk_size</seg>
101
+
<seg>
102
+
Chunk size in bytes. Set by <function>ob_start</function>
103
+
or <link linkend="ini.output-buffering">output_buffering</link> is enabled
104
+
and its value is set to a positive integer
105
+
</seg>
106
+
</seglistitem>
107
+
<seglistitem>
108
+
<seg>buffer_size</seg>
109
+
<seg>
110
+
Output buffer size in bytes
111
+
</seg>
112
+
</seglistitem>
113
+
<seglistitem>
114
+
<seg>buffer_used</seg>
115
+
<seg>
116
+
Size of data in output buffer in bytes
117
+
(the same as the integer return value of <function>ob_get_length</function>)
118
+
</seg>
119
+
</seglistitem>
120
+
</segmentedlist>
121
+
</para>
122
+
</refsect1>
123
+

124
+
<refsect1 role="examples">
125
+
&reftitle.examples;
126
+
<para>
127
+
<example>
128
+
<title>Array returned when <parameter>full_status</parameter> is &false;</title>
46
129
<screen>
47
130
<![CDATA[
48
131
Array
49
132
(
50
-
[level] => 2
51
-
[type] => 0
52
-
[status] => 0
53
133
[name] => URL-Rewriter
54
-
[del] => 1
134
+
[type] => 0
135
+
[flags] => 112
136
+
[level] => 2
137
+
[chunk_size] => 0
138
+
[buffer_size] => 16384
139
+
[buffer_used] => 1024
55
140
)
56
141
]]>
57
142
</screen>
58
-
</informalexample>
59
-
<segmentedlist>
60
-
<title>Simple <function>ob_get_status</function> results</title>
61
-
<segtitle>Key</segtitle><segtitle>Value</segtitle>
62
-
<seglistitem><seg>level</seg><seg>Output nesting level</seg></seglistitem>
63
-
<seglistitem><seg>type</seg><seg><literal>PHP_OUTPUT_HANDLER_INTERNAL (0)</literal> or <literal>PHP_OUTPUT_HANDLER_USER (1)</literal></seg></seglistitem>
64
-
<seglistitem><seg>status</seg><seg>One of <literal>PHP_OUTPUT_HANDLER_START</literal> (0), <literal>PHP_OUTPUT_HANDLER_CONT</literal> (1) or <literal>PHP_OUTPUT_HANDLER_END</literal> (2)</seg></seglistitem>
65
-
<seglistitem><seg>name</seg><seg>Name of active output handler or ' default output handler' if none is set</seg></seglistitem>
66
-
<seglistitem><seg>del</seg><seg>Erase-flag as set by <function>ob_start</function></seg></seglistitem>
67
-
</segmentedlist>
143
+
</example>
68
144
</para>
69
145
<para>
70
-
If called with <parameter>full_status</parameter> = &true; an array
71
-
with one element for each active output buffer level is returned.
72
-
The output level is used as key of the top level array and each array
73
-
element itself is another array holding status information
74
-
on one active output level.
75
-
<informalexample>
146
+
<example>
147
+
<title>Array returned when <parameter>full_status</parameter> is &true;</title>
76
148
<screen>
77
149
<![CDATA[
78
150
Array
79
151
(
80
152
[0] => Array
81
153
(
82
-
[chunk_size] => 0
83
-
[size] => 40960
84
-
[block_size] => 10240
85
-
[type] => 1
86
-
[status] => 0
87
154
[name] => default output handler
88
-
[del] => 1
155
+
[type] => 0
156
+
[flags] => 112
157
+
[level] => 1
158
+
[chunk_size] => 0
159
+
[buffer_size] => 16384
160
+
[buffer_used] => 2048
89
161
)
90
162

91
163
[1] => Array
92
164
(
93
-
[chunk_size] => 0
94
-
[size] => 40960
95
-
[block_size] => 10240
96
-
[type] => 0
97
-
[buffer_size] => 0
98
-
[status] => 0
99
165
[name] => URL-Rewriter
100
-
[del] => 1
166
+
[type] => 0
167
+
[flags] => 112
168
+
[level] => 2
169
+
[chunk_size] => 0
170
+
[buffer_size] => 16384
171
+
[buffer_used] => 1024
101
172
)
102
173

103
174
)
104
175
]]>
105
176
</screen>
106
-
</informalexample>
107
-
</para>
108
-
<para>
109
-
The full output contains these additional elements:
110
-
<segmentedlist>
111
-
<title>Full <function>ob_get_status</function> results</title>
112
-
<segtitle>Key</segtitle><segtitle>Value</segtitle>
113
-
<seglistitem><seg>chunk_size</seg><seg>Chunk size as set by <function>ob_start</function></seg></seglistitem>
114
-
<seglistitem><seg>size</seg><seg>...</seg></seglistitem>
115
-
<seglistitem><seg>blocksize</seg><seg>...</seg></seglistitem>
116
-
</segmentedlist>
177
+
</example>
117
178
</para>
118
179
</refsect1>
119
180

...
...
@@ -123,6 +184,8 @@ Array
123
184
<simplelist>
124
185
<member><function>ob_get_level</function></member>
125
186
<member><function>ob_list_handlers</function></member>
187
+
<member><function>ob_get_length</function></member>
188
+
<member><function>ob_start</function></member>
126
189
</simplelist>
127
190
</para>
128
191
</refsect1>
129
192