ID: 16676 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Analyzed Bug Type: Output Control Operating System: Slackware 8.0 PHP Version: 4.2.0 New Comment:
> If you need to flush, do not use output buffers at all. That's what I'm trying to do, use ob_implicit_flush() at the beginning of my script to turn off ob. > Imagine turning on/off compression, converting one encoding to another, etc in the middle of transmission. It just does not work. I'm not wanting to change encoding or turn zlib compression on/off the middle of a script. I just have a basic 400 line script I'd like to output. I simply don't want to have ob turned on. Previous Comments: ------------------------------------------------------------------------ [2002-04-18 06:12:03] [EMAIL PROTECTED] Don't worray, it's known issue. I can make it flush when all output buffers registered may be flushed, otherwise it just does not work. Imagine turning on/off compression, converting one encoding to another, etc in the middle of transmission. It just does not work. If you need to flush, do not use output buffers at all. Note: Older PHP is just deleted the last output buffer registered with ob_implicit_flush. This is wrong behavior. ------------------------------------------------------------------------ [2002-04-18 03:50:26] [EMAIL PROTECTED] I tried leaving output_buffering = 4096 in php.ini and turning on implicit_flush in php.ini, and it's still not flushing my echo lines till the end of script execution, so neither the function or the ini config are working for me. If I make output_buffering = 0, it flushes correctly as expected, but as I understand it, the whole point of ob_implicit_flush() in runtime is to override the default ini config which is what I want to do. ------------------------------------------------------------------------ [2002-04-18 03:43:38] [EMAIL PROTECTED] I can't change the status to 'Open', but I can say zlib.output_compression is off. ------------------------------------------------------------------------ [2002-04-18 02:57:57] [EMAIL PROTECTED] I guess you are enabling zlib.output_compression. If you are not, please change Status to "Open". Thank you. ------------------------------------------------------------------------ [2002-04-18 02:19:29] [EMAIL PROTECTED] I have a php shell script that outputs ~100 char lines using echo. I'm trying to work around the default php.ini configuration of a 4k automatic buffer and flush the lines to the console for debugging. Calling ob_flush() after each echo, echos the lines immediately, putting ob_end_flush() at the beginning of the script turns off ob so I get immediate output, but ob_implicit_flush() and ob_implicit_flush(1) don't seem to automatically flush after each echo. I have to wait till the end of the script execution to see the output when I try ob_implicit_flush. Using ob_end_flush() is my workaround for now. Same difference whether I use echo or print. This is for RC4. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=16676&edit=1