note 94193 added to function.ob-start
| From: | Bitwise at osu1 dot php dot net | Date: | Wed, 21 Oct 2009 19:41:55 +0000 |
| Subject: | note 94193 added to function.ob-start | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-161954@lists.php.net to get a copy of this message | ||
There is no start flag problem. One just has to notice that the second parameter is not a mode but
consists of bitwise-OR'ed flags.
<?php
function ob_handler($string, $flags) {
static $input = array();
if ( $flags & PHP_OUTPUT_HANDLER_START )
$flags_sent[] = "PHP_OUTPUT_HANDLER_START";
if ( $flags & PHP_OUTPUT_HANDLER_CONT )
$flags_sent[] = "PHP_OUTPUT_HANDLER_CONT";
if ( $flags & PHP_OUTPUT_HANDLER_END )
$flags_sent[] = "PHP_OUTPUT_HANDLER_END";
$input[] = implode(' | ', $flags_sent) . " ($flags): $string<br
/>";
$output = "$string<br />";
if ( $flags & PHP_OUTPUT_HANDLER_END ) {
$output .= '<br />';
foreach($input as $k => $v) $output .= "$k: $v";
}
return $output;
}
ob_start('ob_handler');
echo 'flush';
ob_flush();
echo 'flush 2';
ob_flush();
echo 'clean';
ob_clean();
echo 'flush 3';
ob_flush();
echo 'end flush';
ob_end_flush();
?>
flush
flush 2
flush 3
end flush
0: PHP_OUTPUT_HANDLER_START | PHP_OUTPUT_HANDLER_CONT (3): flush
1: PHP_OUTPUT_HANDLER_CONT (2): flush 2
2: PHP_OUTPUT_HANDLER_CONT (2): clean
3: PHP_OUTPUT_HANDLER_CONT (2): flush 3
4: PHP_OUTPUT_HANDLER_END (4): end flush
----
Server IP: 80.81.171.181
Probable Submitter: 88.115.3.138
----
Manual Page -- http://www.php.net/manual/en/function.ob-start.php
Edit -- https://master.php.net/note/edit/94193
Del: integrated -- https://master.php.net/note/delete/94193/integrated
Del: useless -- https://master.php.net/note/delete/94193/useless
Del: bad code -- https://master.php.net/note/delete/94193/bad+code
Del: spam -- https://master.php.net/note/delete/94193/spam
Del: non-english -- https://master.php.net/note/delete/94193/non-english
Del: in docs -- https://master.php.net/note/delete/94193/in+docs
Del: other reasons-- https://master.php.net/note/delete/94193
Reject -- https://master.php.net/note/reject/94193
Search -- https://master.php.net/manage/user-notes.php