Heim  >  Artikel  >  Backend-Entwicklung  >  Die geplante PHP-Aufgabe erkennt den Verbindungsstatus des Benutzers

Die geplante PHP-Aufgabe erkennt den Verbindungsstatus des Benutzers

高洛峰
高洛峰Original
2016-12-01 09:43:391911Durchsuche

Dieser Artikel führt Sie durch die relevanten Inhalte geplanter Aufgaben. Ich hoffe, er wird Ihnen hilfreich sein!

Geplante Aufgaben

Der Code lautet wie folgt:

ignore_user_abort(); // 用户关闭浏览器程序依然执行 
set_time_limit(0); // 不限制程序运行时间 
$interval = 3; // 程序循环间隔时间秒 

$link = mysql_connect('localhost', 'username', 'paswd'); 
mysql_select_db('test'); 
mysql_query("SET NAMES 'utf8'"); 

do { 
// 用户关闭浏览器停止 start 
echo str_repeat(' ', 4069); // php只在输出时才检查用户连接状态. 一些web服务器的output_buffering默认值是4096字符. 为确保flush()有效, 设置为4069. 
ob_flush(); 
flush(); 
// 用户关闭浏览器停止 end 

$query = "INSERT INTO `test`.`test_demo` (`title`, `content`) VALUES ('计划任务', '" . date("Y-m-d H:i:s", time()) . "')"; 
mysql_query($query); // 采用写入数据库验证程序 
sleep($interval); 
} while (true);

Wenn keine PHP-Ausgabe erfolgt, wird der Benutzer Verbindungsstatus kann nicht erkannt werden. Selbst wenn Sie das Browserprogramm schließen, wird es weiterhin ausgeführt, bis der Apache-Dienst gestoppt oder neu gestartet wird.

Der Code lautet wie folgt:

// 用户关闭浏览器停止 start 
echo str_repeat(' ', 4069); // php只在输出时才检查用户连接状态. 一些web服务器的output_buffering默认值是4096字符. 为确保flush()有效, 设置为4069. 
ob_flush(); 
flush(); 
// 用户关闭浏览器停止 end

Empfohlenes Lernen: „PHP-Video-Tutorial

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
Vorheriger Artikel:PHP-KommentarspezifikationNächster Artikel:PHP-Kommentarspezifikation