xref: /php-src/tests/output/ob_013.phpt (revision 703ef91e)
1--TEST--
2output buffering - handlers/status
3--FILE--
4<?php
5function a($s){return $s;}
6function b($s){return $s;}
7function c($s){return $s;}
8function d($s){return $s;}
9
10class E {
11    public static function f($s) {
12        return $s;
13    }
14
15    public function g($s) {
16        return $s;
17    }
18
19    public function __invoke($s) {
20        return $s;
21    }
22}
23
24$e = new E();
25
26ob_start();
27ob_start('a');
28ob_start('b');
29ob_start('c');
30ob_start('d');
31ob_start(['E', 'f']);
32ob_start([$e, 'g']);
33ob_start($e);
34ob_start(function ($s) { return $s; });
35ob_start();
36
37echo "foo\n";
38
39ob_flush();
40ob_end_clean();
41ob_flush();
42
43print_r(ob_list_handlers());
44print_r(ob_get_status());
45print_r(ob_get_status(true));
46
47?>
48--EXPECTF--
49foo
50Array
51(
52    [0] => default output handler
53    [1] => a
54    [2] => b
55    [3] => c
56    [4] => d
57    [5] => E::f
58    [6] => E::g
59    [7] => E::__invoke
60    [8] => Closure::__invoke
61)
62Array
63(
64    [name] => Closure::__invoke
65    [type] => 1
66    [flags] => 20593
67    [level] => 8
68    [chunk_size] => 0
69    [buffer_size] => 16384
70    [buffer_used] => %d
71)
72Array
73(
74    [0] => Array
75        (
76            [name] => default output handler
77            [type] => 0
78            [flags] => 112
79            [level] => 0
80            [chunk_size] => 0
81            [buffer_size] => 16384
82            [buffer_used] => 0
83        )
84
85    [1] => Array
86        (
87            [name] => a
88            [type] => 1
89            [flags] => 113
90            [level] => 1
91            [chunk_size] => 0
92            [buffer_size] => 16384
93            [buffer_used] => 0
94        )
95
96    [2] => Array
97        (
98            [name] => b
99            [type] => 1
100            [flags] => 113
101            [level] => 2
102            [chunk_size] => 0
103            [buffer_size] => 16384
104            [buffer_used] => 0
105        )
106
107    [3] => Array
108        (
109            [name] => c
110            [type] => 1
111            [flags] => 113
112            [level] => 3
113            [chunk_size] => 0
114            [buffer_size] => 16384
115            [buffer_used] => 0
116        )
117
118    [4] => Array
119        (
120            [name] => d
121            [type] => 1
122            [flags] => 113
123            [level] => 4
124            [chunk_size] => 0
125            [buffer_size] => 16384
126            [buffer_used] => 0
127        )
128
129    [5] => Array
130        (
131            [name] => E::f
132            [type] => 1
133            [flags] => 113
134            [level] => 5
135            [chunk_size] => 0
136            [buffer_size] => 16384
137            [buffer_used] => 0
138        )
139
140    [6] => Array
141        (
142            [name] => E::g
143            [type] => 1
144            [flags] => 113
145            [level] => 6
146            [chunk_size] => 0
147            [buffer_size] => 16384
148            [buffer_used] => 0
149        )
150
151    [7] => Array
152        (
153            [name] => E::__invoke
154            [type] => 1
155            [flags] => 113
156            [level] => 7
157            [chunk_size] => 0
158            [buffer_size] => 16384
159            [buffer_used] => %d
160        )
161
162    [8] => Array
163        (
164            [name] => Closure::__invoke
165            [type] => 1
166            [flags] => 20593
167            [level] => 8
168            [chunk_size] => 0
169            [buffer_size] => 16384
170            [buffer_used] => %d
171        )
172
173)
174