Re: function ob_gzhandler is missed in 5.4
Hi,
I don't want anyone to take it personal... But what is the status about
missing ob_gzhandler function (but also ob_tidyhandler and
ob_iconv_handler) ?
I put mike's patch and a comment to help track the BC break /potential
inconsistency :
https://bugs.php.net/bug.php?id=60326
Regards
Nicolas
On Fri, Nov 18, 2011 at 12:46, Nicolas Grekas
<[email protected]>wrote:
> Without a real ob_gzhandler function, replacing it with an alias as
> currently in RC1 : what if someone then creates an ob_gzhandler function in
> userland ? would ob_start('ob_gzhandler') use the userland function or
> still the alias ? I think this is a second argument to make ob_gzhandler a
> real function : least surprise.
>
> Personally, I do use ob_gzhandler directly because it's the easiest way to
> do chunked compressed encoding in userland.
>
> This allows me to ask for compression as late as possible, because
> registering an ob_start('ob_gzhandler'); may be too early for me. I do want
> to choose to enable compression only when the very first byte is about to
> be sent over the wire.
>
> Hope it helps
>
> Nicolas
>
> <?php
>
> function my_ob_handler($buffer, $mode)
> {
> // based on content-type,
> // do some $buffer filtering
> // and add some header()
>
> if (/* content-type benefits compression based on some userland rules */)
> {
> $buffer = ob_gzhandler($buffer, $mode); // benefits from gzip
> negotiation, chunked compression and related headers
>
> if (PHP_OUTPUT_HANDLER_START & $mode)
> {
> // play/fix with Vary: header, as sent by ob_gzhandler or before
> }
> }
>
> return $buffer;
> }
>
>
Thread (20 messages)