首页 > 后端开发 > 正文

如何实现php定时执行任务,且时间是可配置的

2024-07-23 17:46:49 | 我爱编程网

小编今天整理了一些如何实现php定时执行任务,且时间是可配置的相关内容,希望能够帮到大家。

本文目录一览:

如何实现php定时执行任务,且时间是可配置的

php定时任务。求助

可以使用ignore_user_abort();函数来实现定时器,这个函数只需要启动一次,浏览器关掉也可以一直运行,除非重启服务器;若是linux服务器,可用linux的定时器,执行一个文件,把方法写在文件里就可以

如何实现php定时执行任务,且时间是可配置的

如何实现php定时执行任务,且时间是可配置的

linux下可以 crontab执行如(crontab -e编辑,crontab -l查看)0 1 * * * php test.php #每天01:00执行一次test.php*/5 * * * * php test.php #每5分钟执行一次test.phpphp自身实现:可sleep实现
<?php
function func()
{
//实现要做的事
}
while(true)
{
sleep($n);//$n为秒数
func();
}
?>

如何实现php定时执行任务,且时间是可配置的

php如何制作类似setInterval函数

我爱编程网(https://www.52biancheng.com)小编还为大家带来php如何制作类似setInterval函数的相关内容。

PHP定时执行的三种方式实现

1、windows 的计划任务

2、linux的脚本程序

3、让web浏览器定时刷新

具体实现

1、windows计划任务

PHP很少在win服务器上跑,具体实现也不再深究,看网上实现的原理大概是写bat脚本,然后让window任务添加执行这个bat脚本。

2、linux 的脚本实现


这里主要使用到crontab这个命令,
使用方式 : 我爱编程网

crontab   filecrontab [ -u user ] [ -u user ] { -l | -r | -e }

说明 :

crontab是用来让使用者在固定时间或固定间隔执行程式之用

使用crontab写shell脚本,然后让PHP调用shell,这个是利用linux的特性,应该还不算PHP自身语言的特性

3、PHP实现定时执行计划任务


使用php让浏览器刷新需要解决几个问题
PHP脚本执行时间限制,默认的是30m 解决办法:set_time_limit();或者修改PHP.ini 设置max_execution_time时间(不推荐)
如果客户端浏览器关闭,程序可能就被迫终止,解决办法:ignore_user_abort即使关闭页面依然正常执行
如果程序一直执行很有可能会消耗大量的资源,解决办法使用sleep使用程序休眠一会,然后在执行
PHP定时执行的代码:

<?php
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去
$interval=60*30;// 每隔半小时运行
do{
    //这里是你要执行的代码    
    sleep($interval);
}while(true);

以上就是我爱编程网小编为大家带来的内容了,想要了解更多相关信息,请关注我爱编程网。更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“如何实现php定时执行任务,且时间是可配置的”相关推荐
java定时执行一个方法 java 定时任务的几种实现方式
java定时执行一个方法 java 定时任务的几种实现方式

java定时执行一个方法现在能想到的是三种方法能实现:1、普通thread实现:是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。2、TimerTask:启动和去取消任务时可以控制,第一次执行任务时可以指定你想要的delay时间。3、ScheduledExecutorService实现:最理想的定时任务实现方式,相比于

2024-05-13 15:28:55
java 如何设定时间执行程序?
java 如何设定时间执行程序?

java如何设定时间执行程序?importjava.util.Calendar;\x0d\x0aimportjava.util.Date;\x0d\x0aimportjava.util.Timer;\x0d\x0aimportjava.util.TimerTask;\x0d\x0a\x0d\x0apublicclassTest{\x0d\x0apublicstaticvoidmain(Str

2024-03-18 12:42:35
PHP如何获取本地时间与服务器时间
PHP如何获取本地时间与服务器时间

PHP如何获取本地时间与服务器时间PHP获取服务器时间和本地时间很简单,可以用内置函数实现,具体代码如下:记得给分!!!&lt;?php //获取服务器时间    echo date("Y-m-d h:i:s"); //获取本地时间(也可以说是你所在时区时间)    date_default_timezone_set('地区'); //地区:中国是PRC,或shanghai

2024-08-11 01:52:48
PHP中三种设置脚本最大执行时间的方法(date_default_timezone_set定义和用法)
PHP中三种设置脚本最大执行时间的方法(date_default_timezone_set定义和用法)

PHP中三种设置脚本最大执行时间的方法探讨PHP设置脚本最大执行时间的三种方法在PHP中,设置脚本最大执行时间是关键。默认情况下,脚本最长执行时间为30秒,这在php.ini文件中由max_execution_time变量决定。当脚本运行时间超出这个限制时,需要调整这个设置。实现调整的方法主要有三种:1、直接修改php.ini文件在php.ini中,找到max_exe

2024-12-04 23:06:55
如何让java定时执行一个方法
如何让java定时执行一个方法

如何让java定时执行一个方法现在能想到的是三种方法能实现:1、普通thread实现:是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。2、timertask:启动和去取消任务时可以控制,第一次执行任务时可以指定你想要的delay时间。3、scheduledexecutorservice实现:最理想的定时任

2024-04-20 07:04:57
php定时任务。求助 PHP处理数组常用的几个函数
php定时任务。求助 PHP处理数组常用的几个函数

PHP中array_splice()函数对数组元素的添加、修改、删除array_splice()函数从数组中可实现对数据中元素的添加、修改、删除操作,方便对数组中的值进行处理。语法:array_splice(array,start,length,array),start是从0开始标记,千万不要忘记。注意添加和修改时参数是4个,删除是3个参。添加元素:删除元素:

2024-12-24 15:00:30
腾讯云iis配置云服务器如何添加asp和php两种网络环境网站同时运行?
腾讯云iis配置云服务器如何添加asp和php两种网络环境网站同时运行?

腾讯云iis配置云服务器如何添加asp和php两种网络环境网站同时运行?1、安装PHP的解析;2、配置PHP;3、配置IIS里,增加关于PHP解析所使用的脚本;基本上就这几步可有参考:以PHP4.3.2为例:具体设置方法:1、我们下载了php后,把它的压缩包解压到“C:\php-4.3.2-Win32”中;2、然后还在是“C:\php-

2024-11-07 17:32:02
RxJava怎么实现多个线程同时执行,怎么实现retryWhen
RxJava怎么实现多个线程同时执行,怎么实现retryWhen

RxJava怎么实现多个线程同时执行,怎么实现retryWhen在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题,Java实现线程同步的方法很多,具体如下。(1)synchronized关键字在Java中内置了语言级的同步原语synchronized关键字,其在多线程条件下实现了对共享资源的同步访问。根据synchronized关键字修饰的对象不同可以分

2024-04-13 05:00:28