search
Homephp教程php手册PHP执行计划任务

PHP执行计划任务

Jun 13, 2016 am 10:45 AM
crontablinuxphpDownTaskuseCanexistaccomplishimplementofterminalplanprocess

在Linux的终端下实现守护进程,可以使用crontab来计划PHP脚本执行。

crontab命令的功能是在一定的时间间隔调度一些命令的执行。

 

crontab 使用方法: crontab [ -e | -l | -r ] 文件名 -e:编辑任务 -l:显示任务信息 -r:删除定时执行任务信息

 

crontab的格式:
*  *   *  *  *  Command
分 时 日 月 星期 要运行的命令

"*"代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。

 


1、直接用crontab命令编辑

crontab可以实现针对用户的计划任务

crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数

crontab -l //列出某个用户cron服务的详细内容

crontab -r //删除某个用户的cron服务

crontab -e //编辑某个用户的cron服务

 

比如说root查看自己的cron设置:crontab -u root -l

再例如,root想删除fred的cron设置:crontab -u fred -r

在编辑cron服务时,编辑root用户的cron设置,输入:crontab -u root -e ,进入vi编辑模式,编辑的内容格式为:* * * * * command

 

例如现在要执行一个任务:

任务需求是每隔一分钟,PHP脚本执行一次并记录执行时间,保存到result.log中。

 

start.php:

#!/usr/bin/php

file_put_contents('result.log','当前运行时间:'.date("Y-m-d",time())."/r/n", FILE_APPEND);

 

shell.sh:

#!/bin/sh

php start.php

 

终端:

crontab -u root -e

#进入vim编辑模式:

*/1 * * * * shell.sh

:wq退出并保存

www.2cto.com
 

另外在WEB页面中,使Client断开(如关掉浏览器),PHP脚本也能继续执行.

ignore_user_abort()函数搭配set_time_limit(0)和sleep($interval)即可实现程序

ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.  
set_time_limit(0); // 执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行下去  
$interval=60*5; // 每隔5分钟运行  
do{ 
$fp = fopen('test.txt','a'); 
fwrite($fp,'test'); 
fclose($fp); 
sleep($interval); // 等待5分钟  
}while(true); 
?> 
ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
set_time_limit(0); // 执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行下去
$interval=60*5; // 每隔5分钟运行
do{
$fp = fopen('test.txt','a');
fwrite($fp,'test');
fclose($fp);
sleep($interval); // 等待5分钟
}while(true);
?>

只要运行上面的页面,然后关掉,程序就会一直运行下去。

 

摘自 God's blog

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat Commands and How to Use Them
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor