PHP积极断开与浏览器的连接
PHP主动断开与浏览器的连接
曾经整理过一篇《关于PHP连接处理中set_time_limit()、connection_status()和ignore_user_abort()深入解析》,是讲解浏览器客户端断开时,服务器PHP脚本的处理。
这篇文章,将讲解一下服务器PHP脚本怎样主动断开与浏览器的连接,主要方法是使用http协议header中的Content-Length和Connection
Content-Length的作用:浏览器接收到指定Content-Length大小的消息实体后,则会断开与服务器的连接。
Connection的作用:浏览器接收到Connection的Close或Keep-Alive后,决定是关闭连接还是继续使用当前的连接进下一次请求。
<?php /** * 自动断开与浏览器的连接 * jiaofuyou */ echo '1234567890'; //向浏览器输出的内容 {//断开连接的代码 $size=ob_get_length(); header("Content-Length: $size"); //告诉浏览器数据长度,浏览器接收到此长度数据后就不再接收数据 header("Connection: Close"); //告诉浏览器关闭当前连接,即为短连接 ob_flush(); flush(); } error_log(date("[Y-m-d H:i:s]")." > "."start" ."\n", 3 , "/usr/local/apache2219/logs/php_log"); //断开连接后的执行长时间操作 sleep(5); echo 'test213';//浏览器接收不到了 error_log(date("[Y-m-d H:i:s]")." > "."end" ."\n", 3 , "/usr/local/apache2219/logs/php_log"); //可以查看错误日志是否延迟5秒后执行. ?>
说明:
1、单独使用Content-length实际上连接并未断开,仅是浏览器停止接收信息,Connection: Close才是真正的告诉浏览器关闭连接。
2、指定Content-Length 对于 file_get_contents 没有任何意义;若想使用,请用curl。
如果想让PHP不停的向浏览器输出内容:echo "1234567890"ob_flush();flush();这样是不会立刻输出到浏览器的,可以这样echo "1234567890 "//有换行时会立刻输出到浏览器ob_flush();flush();或者:echo "1234567890"print str_pad("",10000); //输出足够多的内容ob_flush();flush();

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











CONNECTION_REFUSED ist ein Netzwerkverbindungsfehler, der normalerweise auftritt, wenn versucht wird, eine Verbindung zu einem Remote-Server herzustellen. Wenn ein Clientgerät versucht, eine Netzwerkverbindung mit einem Server herzustellen, und der Server die Verbindungsanforderung ablehnt, wird ein CONNECTION_REFUSED-Fehler zurückgegeben. Häufige Gründe sind: Der Server ist nicht gestartet, der Server kann keine weiteren Verbindungsanfragen annehmen, die Server-Firewall blockiert die Verbindung usw.

Lösung: 1. Überprüfen Sie die Netzwerkverbindung. 3. Überprüfen Sie den Cache und die Cookies. 4. Überprüfen Sie die Einstellungen der Firewall und der Sicherheitssoftware.

Wenn bei der Verwendung von PHP zum Herstellen einer Verbindung zu einer MySQL-Datenbank die folgende Fehlermeldung angezeigt wird: PHPWarning:mysqli_connect():(HY000/2002):Connectionrefused, können Sie versuchen, dieses Problem zu lösen, indem Sie die folgenden Schritte ausführen. Um zu bestätigen, ob der MySQL-Dienst normal ausgeführt wird, sollten Sie zunächst prüfen, ob der MySQL-Dienst normal ausgeführt wird. Wenn der Dienst nicht ausgeführt wird oder nicht gestartet werden kann, kann dies zu einem Fehler beim Verweigern der Verbindung führen. kannst du

Verwenden Sie die String.length()-Funktion von Java, um die Länge einer Zeichenfolge zu ermitteln. In der Java-Programmierung ist die Zeichenfolge ein sehr häufiger Datentyp. Wir müssen häufig die Länge einer Zeichenfolge ermitteln, dh die Anzahl der Zeichen in der Zeichenfolge. In Java können wir die Funktion length() der String-Klasse verwenden, um die Länge eines Strings zu ermitteln. Hier ist ein einfacher Beispielcode: publicclassStringLengthExample{publ

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Die Längenfunktion wird verwendet, um die Anzahl der Zeichen oder Bytes in einer angegebenen Zeichenfolge zurückzugeben. Es kann verwendet werden, um die Länge einer Zeichenfolge für Operationen und Beurteilungen bei der Abfrage und Verarbeitung von Zeichenfolgendaten zu berechnen. Es ist zu beachten, dass die Längenfunktion die Anzahl der Zeichen in der Zeichenfolge zählt, nicht die Anzahl der Bytes. Bei Multibyte-Zeichensätzen kann ein Zeichen aus mehreren Bytes bestehen. Daher zählt die Längenfunktion Multibyte-Zeichen bei der Berechnung der Zeichenfolgenlänge als ein Zeichen.

Detaillierte Erläuterung der CSS-Inhaltsattribute: Inhalt, Zähler und Anführungszeichen. CSS (Cascading Style Sheets) ist ein unverzichtbarer Bestandteil der Front-End-Entwicklung. Es kann uns helfen, Webseiten zu verschönern und die Benutzererfahrung zu verbessern. In CSS gibt es einige spezielle Eigenschaften, mit denen die Anzeige von Textinhalten gesteuert werden kann, darunter Inhalt, Zähler und Anführungszeichen. In diesem Artikel werden diese Eigenschaften ausführlich erläutert und spezifische Codebeispiele bereitgestellt. 1. InhaltsattributInhaltsattribut

不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没问题。
