Hallo,
ich hätte eine Frage zu PHP und zwar: ich führe mit PHP zeitaufwendige Rechenaufgaben durch. Dabei möchte ich aber dem Client noch während der Rechenzeit irgendwie Bescheid geben, dass ich noch rechne. Das habe ich zunächst so gelöst, dass ich noch vor dem kritischen Codestück declare(ticks=180) gesetzt habe. Danach kommt eben eine Schleife, die bei jedem Durchlauf einen String erzeugt und in einer globalen Variablen zwischenspeichert. Nach 180 Ticks soll jedes Mal (automatisch) dieser Puffer geleert werden. Das geschieht in einer mit register_tick_function registrierten Funktion. Dort habe ich natürlich auch einen flush(). Die Ausgabe wird jedoch nicht in mehreren Schritten an den Client geschickt, sondern erfolgt erst ganz am Ende, wenn quasi die ganze Rechenarbeit fertig ist. Das mit den Ticks funktioniert einwandfrei, d.h. nach 180 Ticks wird tatsächlich die "print"-Funktion aufgerufen, doch die "tatsächliche" Ausgabe (d.h. wann ich was auf dem Bildschirm zu sehen bekomme) erfolgt aufeinmal - wenn die Schleife fertig ist. Kann mir jemand ein Paar Tips geben, wie ich laufend eine Ausgabe an Clients schicken kann, obwohl das Script noch rechnet?
Vielen Dank für Eure Vorschläge.
jepetko