Mailinglisten-Archive |
> > Wenn man bei PHP das Cachen der Header abstellt, kann man per flush() > > zeichenweise Daten ausgeben. Normalerweise stellen die Browser dies auch > > sofort dar, sofern der Inhalt gerendert werden kann. (Tabellen können > > deswegen z.B. nicht zeilenweise ausgegeben werden, da bei variable Spalten- > > bzw. Zeilenbreite erst die ganze Tabelle ausgewertet werden muß, um sie > > anzeigen zu können) > > Wenn ihr von flush() redet, meint ihr das PHP-Flush, nicht das > MySQL-flush, oder? Richtig, die Funktion heißt einfach nur flush(). > Und das bedeutet dann, dass ich bspw. in einer while-Schleife jede > Benutzereingabe nach dem Abschicken durch durch Loeschen des > Ausgabepuffers direkt wieder an die Clients rausschicke? > Und das ist dann Streaming? Stimmt, sobald flush() aufgerufen wird, werden alle Ausgabepuffer geleert und zum Client geschickt. Wenn man das in einer Schleife macht, kann man beliebig fragmentierte Textblöcke nacheinander wegschicken. Ich glaube, eine offizielle Bezeichnung gibt es dafür noch nicht, aber "Streaming" oder "Endlosdatei" kommen dem recht nahe. > Daneben scheint es ja, wie Till erklaert hat, fast Bedingung zu sein, > das Ganze unter PHP4 zu realisieren, wegen der Performance, oder? Das ganze klappt auch wunderbar mit PHP 3, Tobias und ich haben nur die Erfahrung gemacht, daß bei großen Skripten und vielen Clients die Maschine recht schnell sehr stark belastet wird. PHP 4 geht damit wesentlich souveräner um. Am besten einfach mal ein paar Testläufe machen und sich selbst ein Bild machen. Till
php::bar PHP Wiki - Listenarchive