本文目录一览:
如何使用纯PHP实现定时器任务
我用PHP写了下面的延时代码,主要用来作为BAT文件调用进行倒计时:
?php
//批处理延时工具
if ($argc==2){
set_time_limit(0);
$v=$argv[1]+0;
while($v0){
echo "\r请等待 ".sec2str($v)." 秒。。。 ";
$n=$v600?600:($v60?60:($v10?10:1));
sleep($v$n?$n:$v);
$v-=$n;
}
$v=$argv[1]+0;
echo "\r".sec2str($v)." 秒延时完毕。 \n";
}
else echo "使用方法:\nsleep.php 演示秒数";
function sec2str($v){
$s='';
if ($v3600) {$s.=floor($v/3600).':';$v%=3600;}
if ($s'' || $v60) {$s.=floor($v/60).':';$v%=60;}
$s.=$v;
return $s;
}
?
用php怎么做定时器
你写好一个PHP脚本,就是用来检测工作计划并发送email的,用服务器的计划任务跑这个脚本,
或者用js的settimeout定时请求也行。
PHP实现定时任务的几种方式
一. 简单
?php
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去
ini_set('memory_limit','512M'); // 设置内存限制
$interval=60*30;// 每隔半小时运行
do{
//ToDo
sleep($interval);// 等待5分钟
}
while(true);
二. 简单 可控型
config.php
?php
return 1;
?
cron.php
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去
$interval=60*30;// 每隔半小时运行
do{
$run = include 'config.php';
if(!$run) die('process abort');
//ToDo
sleep($interval);// 等待5分钟
}
while(true);
三. 简单 改进型
?php
$time=15;
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
/*
function
*/
sleep($time);
file_get_contents($url);
?
PHP怎么制作计时器
计时器的运用在网页制作中很普遍,其实计时器有很多做法,PHP加JS、JS加AJAX也可以控制实现。不是PHP可以单独实现的,因为PHP是实现服务端的语言,没有办法去控制。以下实例就是制作计时器的代码:
SCRIPT language=JAVASCRIPT
var timerID = null;
var timerRunning = false;
function stopclock()
{
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}
function startclock()
{
stopclock();
showtime();
}
function showtime()
{
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = "" +hours;
//定时初始化数据库的代码:
timeValue += ((minutes 10) ? ":0" : ":") + minutes
timeValue += ((seconds 10) ? ":0" : ":") + seconds
document.Calc.time.value = timeValue;
// you could replace the above with this
// and have a clock on the status bar:
// window.status = timeValue;
timerID = setTimeout("showtime()",1000);
timerRunning = true;
return '';
}/script
客服端PHP+HTML代码:
html
head
META HTTP-EQUIV="Refresh" Content="1;URL=test.php"
/head
body
?
echo date("Y年m月d日 H时i分s秒");
?
/body
/html