日期:2014-05-16  浏览次数:20493 次

php定时任务
本帖最后由 hilives 于 2014-02-26 18:18:21 编辑
很多小说网站都有排行榜,比如日排行,周排行,像这类排行榜都是晚上12点刷新,
这个东西是手工操作,还是用定时任务啊
如果说用定时任务,是不是用以下的定时任务方法呢,求解


$interval=5;// 每隔5s运行
 
//方法1--死循环
do{
    echo '测试'.time().'<br/>'; 
    sleep($interval);// 等待5s    
}while(true);


------解决方案--------------------
linux下crontab 。windows计划任务。不必死循环
------解决方案--------------------
不必使用定时任务,在每天的第一次访问时进行即可

------解决方案--------------------
利用用户点击执行php文件,将排行榜生成外部文件,然后用filemtime()判断

if((time()-filemtime($file_name))> 60*60*24){
  //外部文件生成时间超过24小时,数据库操作,重新生成一次外部文件
}
$file=file_get_contents($file_name);

------解决方案--------------------
用户访问的时候刷新数据,判断是否是需要刷新数据的时段
用户访问的时候采集数据,判断是否是需要采集数据的时段->缓存数据更新