PHP 和 Linux,分別實現定時任務

2021-09-01 18:07:57 字數 2050 閱讀 4968

參考:

php函式:

linux crontab:

這個可根據業務需求在專案後台做成配置頁面,運營人員也可配置。

<?php 

//開始任務

public function startcrond($id)

//終止任務

public function abortcrond($id)

//執行任務

public function execcrond($id)

if (1 == $crond_info['type']) elseif (2 == $crond_info['type']) else

}} while (true);

} //任務1

public function testcrond1()

//任務2

public function testcrond2()

//任務3

public function testcrond3()

create table `bs_crond` (

`id` int(11) not null auto_increment,

`type` tinyint(2) not null default '1' comment '1、以秒為週期,2、以天為週期',

`interval` varchar(30) default null comment 'type=1:間隔秒數,type=2:每天的執行時間時分 示例12:10',

`command` varchar(100) not null comment '任務',

`path` varchar(100) default null,

`exec_count` int(11) default '0' comment '累計執行統計',

`run` varchar(10) default '0' comment '是否開始 1、正常執行,0、終止',

primary key (`id`) using btree

) engine=innodb auto_increment=191 default charset=utf8 row_format=compact comment='週期任務';

create table `test` (

`id` int(11) not null auto_increment,

`crond_id` int(11) default null,

`date` datetime default null,

primary key (`id`)

) engine=innodb auto_increment=352 default charset=utf8mb4 comment='測試表';

執行結果:

crontab的基本格式:

f1  f2  f3  f4  f5  command

分  時     日  月  周  命令

第一列f1代表分鐘1~59:當f1為*表示每分鐘都要執行;為*/n表示每n分鐘執行一次;為a-b表示從第a分鐘到第b分鐘這段時間要執行;為a,b,c,...表示第a,b,c分鐘要執行

第二列f2代表小時0~23(0表示凌晨):當f2為*表示每小時都要執行;為*/n表示每n小數執行一次;為a-b表示從第a小時到第b小時這段時間要執行;為a,b,c,...表示第a,b,c小時要執行

第三列f3代表日1~31:含義如上所示,以此類推

第四列f4代表月1~12:含義如上所示,以此類推

第五列f5代表星期0~6(0表示星期天):含義如上所示,以此類推

第六列command代表要執行的命令

命令引數:

crontab    -l   在標準輸出上顯示當前的crontab

crontab    -r   刪除當前的crontab檔案

crontab    -e  編輯當前的crontab檔案 

php 實現linux的定時任務

在php學習和工作生活中,經常需要定時去執行任務,一般可以分為純 實現和借助linux的定時任務管理器cron.d或者crontab來實現。1.先來說一下純 是如何實現的。ignore user abort 關閉瀏覽器仍然執行 set time limit 0 讓程式一直執行下去 interval ...

linux實現php定時執行cron任務詳解

對於php本身並沒有一套解決方案來執行定時任務,不過是借助sleep函式完成的。這種方就是要提前做一些配置,如實現過程 複製 如下 ignore user abort 關掉瀏覽器,php指令碼也可以繼續執行.set time limit 0 通過set time limit 0 可以讓程式無限制的執...

php分別做為cgi和module來執行的配置

php php version 5.0.0b4 apache apache 2.0.49 win32 1,做為 cgi來執行 2,做為 module 來執行1,做為apache2的 cgi執行 scriptalias php c php php phpphp php php cgi.exe 上面的 ...