php 计划任务 检测用户连接状态

yipeiwu_com6年前PHP代码库
计划任务
复制代码 代码如下:

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);

如果没有输出php是无法检测用户连接状态的。即使关闭浏览器程序依然会运行直到apache服务停止或重启。
复制代码 代码如下:

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

相关文章

php查找字符串出现次数的方法

本文实例讲述了php查找字符串出现次数的方法。分享给大家供大家参考。具体方法如下: 在php中查找字符串出现次数的查找可以通过substr_count()函数来实现,下面就来给大家详细介...

php为字符串前后添加指定数量字符的方法

本文实例讲述了php为字符串前后添加指定数量字符的方法。分享给大家供大家参考。具体分析如下: 这段php代码定义了两个函数 str_prefix和str_suffix,分别用来给字符串前...

PHP封装CURL扩展类实例

本文实例讲述了PHP封装CURL扩展类。分享给大家供大家参考。具体如下: <?php /** * @description: 封装CURL扩展 * @date: 201...

工厂模式在Zend Framework中应用介绍

工厂模式在Zend Framework中应用介绍

首先我们先引用些概念: 工厂模式:专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有其同的父类。工厂模式属于类的创建模式,通常根据自变量的不同返回不同类的实例。 工厂模式的实质...

php 无限分类的树类代码

复制代码 代码如下:<?php /** by lenush; */ class Tree { var $data = array(); var $child = array(-1=...