Heim > Artikel > Backend-Entwicklung > PHP-Flush ist ungültig, PHP-Echtzeitausgabemethode unter IIS7
In diesem Artikel werden hauptsächlich das ungültige PHP-Flush und die Echtzeit-Ausgabemethode von PHP unter IIS7 vorgestellt.
In einem relativ zeitaufwändigen Vorgang möchte ich das aufzeichnen Vorgang in Echtzeit im Browser. Bei der Anzeige wird „flush()“ verwendet, um den Inhalt im Puffer an den Browser zu senden. In iis7 kann PHP, das im Fastcgi-Modus konfiguriert ist, jedoch nicht implementiert werden und die Ergebnisse werden immer zusammen angezeigt.
for ($i=10; $i>0; $i--) { echo $i.'<br />'; @ob_flush(); flush(); sleep(1); }
Der obige Code kann die Ergebnisse unter den Standardeinstellungen von IIS nicht schrittweise anzeigen. Die Lösung lautet wie folgt:
Öffnen Sie die Datei C:WindowsSystem32inetsrvconfigapplicationHost.config. Beachten Sie, dass diese Datei mit einer 64-Bit-Bearbeitungssoftware geöffnet werden muss 32-Bit-Software meldet, dass die Datei nicht vorhanden ist. Öffnen Sie sie einfach mit dem mit dem System gelieferten Editor. Suchen Sie den folgenden Absatz und fügen Sie den roten Code hinzu, dh fügen Sie ResponseBufferLimit = „0“ zum PHP-Handler hinzu.
Kopieren Sie den Code Der Code lautet wie folgt:
<handlers accessPolicy="Read, Script"> <add name="PHP_via_FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="E:\PHP\php-cgi.exe" resourceType="Either" responseBufferLimit="0" />
Jetzt können Sie es versuchen. Wenn es immer noch nicht funktioniert, setzen Sie in php.ini „output_buffering = Off“. .
Der letzte Punkt ist sehr wichtig. Er führt in verschiedenen Browsern zu unterschiedlichen Ergebnissen. Im IE sollte es kein Problem geben, jeder Echo-Inhalt muss HTML enthalten, sonst funktioniert er nicht. Wenn der Echo-Inhalt zu kurz ist, kann dieser Effekt nicht erreicht werden. Ein Leerzeichen wie: echo str_pad('', 1050); Chrome muss anscheinend zuerst mehr als 1000 Zeichen ausgeben, um diesen Effekt zu erzielen. Wenn es nicht funktioniert, versuchen Sie es mit mehr.
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
Verwenden Sie Schlüsselwörter und das Laden von Dateien in PHP
phpÖffentliches WeChat-Konto Detaillierte Erklärung von Entwicklungsmodus
Detaillierte Erläuterung der Interaktion und Schnittstelle der öffentlichen PHP-WeChat-Plattform
Das obige ist der detaillierte Inhalt vonPHP-Flush ist ungültig, PHP-Echtzeitausgabemethode unter IIS7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!