首页 > 后端开发 > 正文

php定时器框架 thinkphp框架里怎么用linux的crontab写php的定时脚本

2023-09-16 19:08:28 | 我爱编程网

大家平时对后端开发都十分关注,今天为大家整理了php定时器框架 thinkphp框架里怎么用linux的crontab写php的定时脚本,下面就随我爱编程网小编一起来看一下吧。

php定时器框架 thinkphp框架里怎么用linux的crontab写php的定时脚本

php如何自动执行定时任务



PHP本身是没有定时功能的,PHP也不能多线程。PHP的定时任务功能必须通过和其他工具结合才能实现,例如WordPress内置了wp-cron的功能,很厉害。本文,我们就来深入的解析几种常见的php定时任务的思路。
Linux服务器上使用CronTab定时执行php
我们先从相对比较复杂的服务器执行php谈起。服务器上安装了php,就可以执行php文件,无论是否安装了nginx或Apache这样的服务器环境软件。而Linux中,使用命令行,用CronTab来定时任务,又是绝佳的选择,而且也是效率最高的选择。
首先,进入命令行模式。作为服务器的linux一般都默认进入命令行模式的,当然,我们管理服务器也一般通过putty等工具远程连接到服务器,为了方便,我们用root用户登录。在命令行中键入:
crontab -e之后就会打开一个文件,并且是非编辑状态,则是vi的编辑界面,通过敲键盘上的i,进入编辑模式,就可以编辑内容。这个文件中的每一行就是一个定时任务,我们新建一行,就是新建一条定时任务(当然是指这一行内按照一定的格式进行书写)。我们现在来举个例子,增加一行,内容如下:
00 * * * * lynx -dump
00 * * * *就是指当当前时间的分钟数为00时,执行该定时任务。时间部分由5个时间参数组成,分别是:
分时日月周第1列表示分钟1~59 每分钟用或者 */1表示,/n表示每n分钟,例如*/8就是每8分钟的意思,下面也是类推
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
整个句子的后面部分就是操作的具体内容。
lynx -dump
00 */2 * * * /usr/local/bin/php /home/www/script.php这条语句就可以在每2小时的0分钟,通过linux内部php环境执行script.php,注意,这里可不是通过url访问,通过服务器环境来执行哦,而是直接执行,因为绕过了服务器环境,所以效率当然要高很多。
好了,已经添加了几条需要的定时任务了吧。点击键盘上的Esc键,输入“:wq”回车,这样就保存了设置的定时任务,屏幕上也能看到提示创建了新的定时任务。接下来就是好好写你的script.php了。
关于CronTab的更多用法这里就不介绍了,如果你想更灵活的使用这个定时任务功能,应该自己再去深入学习一下crontab。

php定时器框架 thinkphp框架里怎么用linux的crontab写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定时器框架 thinkphp框架里怎么用linux的crontab写php的定时脚本

thinkphp框架里怎么用linux的crontab写php的定时脚本

键入 crontab
-e 编辑crontab服务文件
------------------------------------------Ubuntu中的linux---------------
安装lynx包:apt-get isntall lynx
先写ln.sh脚本:lynx _task.php

设置定时:crontab -e
0 1 * * * bash /var/www/test/ln.sh
-------------------------------------------------------------------------
分为两种情况:
第一种情况:你的php脚本中没有引入其他PHP文件,也就是说没有include,require_once等命令的PHP文件
* */1 * * * /usr/local/php/bin/php
/var/www/html/wwwroot/web/script.php (每一小时执行一次script.php)
注意,这样写需要把PHP变成可执行的脚本文件。在命令行下,脚本所在目录
chmod +x script.php
注意:你的script.php文件中一定要在开始处加上: #!/usr/local/php/bin/php -q
,下面是一个完整的script.php文件代码
<?php
#!/usr/local/php/bin/php -q
session_start();
define( "DB_PASSWORD", "111111" ); //服务器登陆密码。这里我写不完,去后盾人看看相关视频你就会了,希望能帮你解决问题。

以上就是今天分享给大家的内容了,想要了解更多后端开发资讯,敬请关注我爱编程网!
与“php定时器框架 thinkphp框架里怎么用linux的crontab写php的定时脚本”相关推荐
定时执行任务框架php 如何使用Linux的Crontab定时执行PHP脚本的方法
定时执行任务框架php 如何使用Linux的Crontab定时执行PHP脚本的方法

如何使用Linux的Crontab定时执行PHP脚本的方法方法11.在web根目录创建请求的脚本index.php我的文件路径(根据安装路径不同有不同路径):/usr/local/webserver/htdosc/index.php2.创建crontab文件2.1  crontab-e2.2 *****/usr/local/webserver/php/bin/php-cg

2023-09-28 03:39:52
php框架中定时执行脚本 php如何自动执行定时任务
php框架中定时执行脚本 php如何自动执行定时任务

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

2023-10-02 06:59:53
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如何实现定时任务,php定时任务方法,最佳

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

2023-10-03 14:44:18
php定时框架 php如何实现定时任务
php定时框架 php如何实现定时任务

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

2023-09-11 05:19:26
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-06 16:00:04
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