Autor Zpráva
Darker
Profil
Na PHP net je tento kód, který nefunguje. Může to být hostingem (a mým localhostem, kde to nefunguje úplně stejně).
<?
 // This works !
 ob_end_flush();
 for($i=0;$i<10;$i++) {
   echo "yeah :-))))\n";
   @ob_flush();
   sleep(1);
 }
 ?>
Alphard
Profil
Nemáte nastavený ještě výstupní buffer?
Darker
Profil
Alphard:
Vím já? Je to freehosting, může tam být cokoliv. Jde takový buffer vypnout, nebo už je to mimo PHP?
K čemu vlastně bufferování je?
Alphard
Profil
V phpinfo hledejte klíč output_buffering. A jak změnit nastavení php? Jste tady docela dlouho, zkuste hádat.

Teď jsem koukl do manuálu a vidím
Flush (send) the output buffer and turn off output buffering
omlouvám se, zapomněl jsem na tuto dodatečnou funkci.
Alphard
Profil
Když už tady dělám zmatky, prošel jsem pár dalších komentářů a našel dobře fungující verzi i bez potlačování chyb

<?php
header( 'Content-type: text/html; charset=utf-8' );

ob_end_flush();
for($i=0;$i<10;$i++) 
{
    echo "yeah :-))))<br>\n";
    flush();
    sleep(1);
}
echo "konec";

Zásadní je ten header. Na lokále Apache 2.2 + PHP 5.4 funguje dle očekávání.
Darker
Profil
Krása, funguje to perfektně. Mohl bys sem prosím dát odkaz na komentář, kde jsi na to přišel? Nechápu totiž, co s tím vším má co dělat Content-Type.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0