ID: 16676 Comment by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Won\'t fix Bug Type: Output Control Operating System: Slackware 8.0 PHP Version: 4.2.0 New Comment:
We don't seem to be communicating very well. I've been wanting to shut off buffering this whole time. Your suggestion to not buffer if I don't need it is just telling me what I already want to do. I've been trying to use the functions documented in the manual that are supposed to shut it off, but they have a big "Won't fix" label on them in the bug database. How about if I word it differently. I want the default buffer handling set in php.ini for my webpage output, but I don't want buffers for my command line scripts. I want those to output something to STDOUT as soon as it comes to a echo/print. If I don't use ob_end_flush, ob_implicit_flush, or ini_set, then what should I use to turn off buffering in my command line scripts. Previous Comments: ------------------------------------------------------------------------ [2003-01-11 17:08:45] [EMAIL PROTECTED] And don't forget that some buffers should never be deleted once it's started. The error message is raised, since some users don't know it shouldn't. ------------------------------------------------------------------------ [2003-01-11 17:05:17] [EMAIL PROTECTED] Since current output buffer is statelss even if some buffers need stateful handling to prevent crashes/malformed output/ etc. Don't start buffer if you don't need it. Complain people who insisted this behavior. Search php-dev archive ;) ------------------------------------------------------------------------ [2003-01-10 12:32:43] [EMAIL PROTECTED] Now I'm getting a PHP notice in Windows XP using PHP 4.3.0 from the cmd line. PHP Notice: ob_end_flush() [<a href='http://www.php.net/ref.outcontrol'>ref.outcontrol</a>]: failed to delete buffer default output handler. in C:\Apache\cgi-bin\mybot.php on line 58 In previous versions, ob_end_flush was my workaround to ob_implicit_flush not working. In 4.3.0 ob_end_flush isn't working for me and it does work in 4.2.3. Could someone make at least one of the two work again instead of keeping the "Won't fix" status? ------------------------------------------------------------------------ [2002-12-27 08:35:57] [EMAIL PROTECTED] Should have been won't fix ------------------------------------------------------------------------ [2002-12-27 08:16:53] [EMAIL PROTECTED] It is easy to make it actually flush output. Difficult part is make it work always. Some output buffers shouldn't be deleted and cannot be deleted. i.e. Some browsers will freeze if server send malformed compressed output. Thus ob_end_flush() wouldn't and shouldn't work in some cases. If it works, it's a bug should be fixed. Fix is simple, but you have to live with that. If you are interested, search php-dev archive. BTW, ob_implicit_flush() simply enable SAPI level auto flushing even if its name imply PHP output buffer flushing. Don't blame me, I'm for fixing it ;) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/16676 -- Edit this bug report at http://bugs.php.net/?id=16676&edit=1