首页 > 后端开发 > 正文

php定时框架 php如何实现定时任务

2023-09-11 05:19:26 | 我爱编程网

今天我爱编程网小编整理了php定时框架 php如何实现定时任务相关信息,希望在这方面能够更好的大家。

php定时框架 php如何实现定时任务

php如何实现定时任务,php定时任务方法,最佳

PHP制作定时任务(也称计划任务)的方法,大概分为2种:

  1. 现在基本所有的PHP框架,如:ThinkPHP,Yii,Laravel等等;它们都是单入口的形式,也就是说所有的请求都集合到index.php中,然后再由框架核心来根据请求参数的不同来分配到不同的控制器当中。基于单入口的形式,那么就可以做基于行为(例如TP3.2)或者说基于事件的定时任务。

  2. 系统自动的定时任务,比如Linux的crontab,windows的计划任务等。

两中方法各有所长各有所短

基于事件:这种利用的是框架本身提供的一些行为来实现,优点是:不需要特殊配置,只要项目能跑起来,那么定时任务也能执行。缺点是:灵活性比较差,必须要借助框架实现。

基于系统:基于操作系统来实现,优点是:灵活性很高,而且可控性也很好。缺点是:需要特殊配置,专业要求性比较强。

具体要使用哪种方法,可以依据自己的能力和项目需要来选择。最后附上TP3.2的定时任务配置,这个只需要配置就可以,如果想查看具体实现原理,可以查看/ThinkPHP/Library/Behavior/CronRunBehavior.class.php 我爱编程网

第一步:/Application/Common/Conf目录下新建两个文件:
分别如:
/Application/Common/Conf/tags.php
/Application/Common/Conf/crons.php

1) 新建 tags.php,编辑内容如下:
return array(
'app_end' => array('Behavior\CronRunBehavior'),
);

2) 新建 crons.php ,编辑内容如下:
return array(
'cron_1' => array('myplan', 1),
);

第二步:/Application/目录下新建 Cron文件夹,里面新建文件myplan.php文件
路径如:/Application/Cron/myplan.php
编辑内容如下:
echo 11111;

查看是否运行成功,最简单的方法是查看/Application/Runtime/~crons.php,这个文件是否存在。

php定时框架 php如何实现定时任务

php如何实现定时任务



php如何实现定时任务
首先使用“ignore_user_abort()”函数,让浏览器关掉也能使php脚本继续执行;
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.然后通过“set_time_limit(0)”可以让程序无限制的执行下去;
set_time_limit(3000);// 通过set_time_limit(0)可以让程序无限制的执行下去最后写个定时循环来执行业务逻辑。

do{
//这里写业务逻辑
sleep(5);// 等待5s
} while (true);推荐教程:《PHP教程》

php定时框架 php如何实现定时任务

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="".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
/*
function
*/
sleep($time);
file_get_contents($url);
?>

以上就是我爱编程网小编给大家带来的php定时框架 php如何实现定时任务全部内容,希望对大家有所帮助!
与“php定时框架 php如何实现定时任务”相关推荐
定时任务调度框架php php如何实现定时任务
定时任务调度框架php php如何实现定时任务

php如何自动执行定时任务PHP本身是没有定时功能的,PHP也不能多线程。PHP的定时任务功能必须通过和其他工具结合才能实现,例如WordPress内置了wp-cron的功能,很厉害。本文,我们就来深入的解析几种常见的php定时任务的思路。Linux服务器上使用CronTab定时执行php我们先从相对比较复杂的服务器执行php谈起。服务器上安装了php,就可以执行php文件,无论

2023-08-30 06:50:34
php定时框架 php如何实现定时任务,php定时任务方法,最佳
php定时框架 php如何实现定时任务,php定时任务方法,最佳

PHP实现定时任务的几种方法一.简单&lt;?phpignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.set_time_limit(0);//通过set_time_limit(0)可以让程序无限制的执行下去ini_set('memory_limit','512M');//设置内存限制$interval=60*30;//每隔半小时运行do

2023-09-11 05:19:14
框架定时任务怎么访问php php如何实现定时任务,php定时任务方法,最佳
框架定时任务怎么访问php php如何实现定时任务,php定时任务方法,最佳

php如何实现定时任务,php定时任务方法,最佳PHP制作定时任务(也称计划任务)的方法,大概分为2种:现在基本所有的PHP框架,如:ThinkPHP,Yii,Laravel等等;它们都是单入口的形式,也就是说所有的请求都集合到index.php中,然后再由框架核心来根据请求参数的不同来分配到不同的控制器当中。基于单入口的形式,那么就可以做基于行为(例如TP3.2)或者说基于事件

2023-10-03 14:44:18
php定时任务框架 PHP实现定时任务的几种方法
php定时任务框架 PHP实现定时任务的几种方法

PHP实现定时任务的几种方法一.简单&lt;?phpignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.set_time_limit(0);//通过set_time_limit(0)可以让程序无限制的执行下去ini_set('memory_limit','512M');//设置内存限制$interval=60*30;//每隔半小时运行do

2023-09-17 02:33:08
定时任务框架php PHP实现定时任务的几种方法
定时任务框架php PHP实现定时任务的几种方法

php如何自动执行定时任务PHP本身是没有定时功能的,PHP也不能多线程。PHP的定时任务功能必须通过和其他工具结合才能实现,例如WordPress内置了wp-cron的功能,很厉害。本文,我们就来深入的解析几种常见的php定时任务的思路。Linux服务器上使用CronTab定时执行php我们先从相对比较复杂的服务器执行php谈起。服务器上安装了php,就可以执行php文件,无论

2023-09-23 20:37:15
php定时器框架 php如何自动执行定时任务
php定时器框架 php如何自动执行定时任务

thinkphp框架里怎么用linux的crontab写php的定时脚本键入crontab-e编辑crontab服务文件------------------------------------------Ubuntu中的linux---------------安装lynx包:apt-getisntalllynx先写ln.sh脚本:lynx_task.php设置定时:c

2023-09-16 19:08:07
php定时函数框架 php如何自动执行定时任务
php定时函数框架 php如何自动执行定时任务

php如何制作类似setInterval函数PHP定时执行的三种方式实现1、windows的计划任务2、linux的脚本程序3、让web浏览器定时刷新具体实现1、windows计划任务PHP很少在win服务器上跑,具体实现也不再深究,看网上实现的原理大概是写bat脚本,然后让window任务添加执行这个bat脚本。2、linux的

2023-09-09 07:40:58
php定时调度框架 php如何自动执行定时任务
php定时调度框架 php如何自动执行定时任务

PHP实现定时任务的几种方法一.简单&lt;?phpignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.set_time_limit(0);//通过set_time_limit(0)可以让程序无限制的执行下去ini_set('memory_limit','512M');//设置内存限制$interval=60*30;//每隔半小时运行do

2023-09-21 02:00:26