Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Flush ist ungültig, PHP-Echtzeitausgabemethode unter IIS7

PHP-Flush ist ungültig, PHP-Echtzeitausgabemethode unter IIS7

墨辰丷
墨辰丷Original
2018-06-01 14:42:331444Durchsuche

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.&#39;<br />&#39;;
  @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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn