PHP not listening when you try to flush data. Try the following, it helped for me:
@ob_flush(); // try a normal flush
flush();
If PHP isn't flushing it could be your webserver that's collecting your output for gzipping:
mod_gzip_on no
This worked for me..