soweit ich weiß ist der parameter für sleep immer in milisekunden angegeben.
wenn das script 2sek stoppen soll müsste der befehl also sleep(2000) heißen.
MfG
Damon
edit: ok diverse posts machen diesen hier überflüssig
Kann sein daß das bei der ersten verzögerten output, noch nix angezeigt wird. Dann einfach weitere Anweisungen ausführen lassen. Hängt auch stark vom Browser ab.
stimmt nicht. Du kannst auch mit ob_flush() direkt während der Laufzeit Daten an den Browser senden, wenn der Inhalt noch nicht fertig ist. Allerdings ist es Sache des Browsers, wie er dies behandelt: FF gibt die Daten sofort aus, Chrome sammelt die Daten selbst nochmal um sie in größeren Stücken auszugeben usw.
In der Theorie funktioniert es, in der Praxis ist extrem browserabhängig.
Doch das sollte gehen, denk nur an das script-time-limit.
Kann sein daß das bei der ersten verzögerten output, noch nix angezeigt wird. Dann einfach weitere Anweisungen ausführen lassen. Hängt auch stark vom Browser ab.
Also PHP ist dafür wirklich ungeeignet...
Mit ein bisschen JavaScript lässt sich das bestimmt ganz einfach machen.
Ansonsten:
Gib Hallo aus und in einem Frame direkt darunter öffnest du eine andere Seite.
Diese andere Seite hat nen meta refresh, der nach 2 Sekunden auf ne andere Seite leitet. Und dort steht dann "Welt"^^
Absolut unschön aber das geht sicher
Für was braucht man das warten denn überhaupt? PHP ist für solche Zwecke (da es wie schon oben angesprochen läuft, bevor irgendwelche Daten zum Client kommen) total ungeeignet.
Wundert mich aber das das tatsächlich Browserabhängig ist. Wäre davon ausgegangen, dass der Webserver einfach so lange wartet bis er dem Client die Seite gibt.
Eher nicht. Wie mehrfach gesagt ist das Verhalten der Ausgabe abhängig vom Browser. Was sich PHP oder der Webserver wünscht ist dabei leider irrelevant. Dass das Beispiel funktioniert sie man ggf. schon daran, das man innerhalb des sleeps das laden der Seite abbricht. Dann wird nur "Hallo" angezeigt.
Das IFrame Beispiel ist schon ein bischen überzogen <.< aber der Gedanke schon richtig. Eine verzögerte Ausgabe bzw. Anzeige würde ich eher mit Ajax lösen. Bspw. wäre das $.get() oder $.post() von jQuery möglich, das mittels setInterval() wiederholt aufgerufen wird. Da dies aber schnell komplexe Züge annimmt, hilft es, sich thematisch damit auseinderzusetzen. Eine "machs so"-Lösung gibs da nicht.
Eher nicht. Wie mehrfach gesagt ist das Verhalten der Ausgabe abhängig vom Browser. Was sich PHP oder der Webserver wünscht ist dabei leider irrelevant. Dass das Beispiel funktioniert sie man ggf. schon daran, das man innerhalb des sleeps das laden der Seite abbricht. Dann wird nur "Hallo" angezeigt.
Das IFrame Beispiel ist schon ein bischen überzogen <.< aber der Gedanke schon richtig. Eine verzögerte Ausgabe bzw. Anzeige würde ich eher mit Ajax lösen. Bspw. wäre das $.get() oder $.post() von jQuery möglich, das mittels setInterval() wiederholt aufgerufen wird. Da dies aber schnell komplexe Züge annimmt, hilft es, sich thematisch damit auseinderzusetzen. Eine "machs so"-Lösung gibs da nicht.
Ich verfolge nun einen anderen Ansatz. Mein Ziel wäre es gewesen, den Prozess eines Scripts, das via Web ausgeführt wird, mitverfolgen. Ich speichere nun alle Ergebnisse und schreibe es in ein Logfile, das ich mir via Mail zuschicken lasse.