网站地图    收藏   

主页 > 系统 > nginx >

使用crontab自动执行php文件_php定时操作

来源:未知    时间:2017-01-03 18:24 作者:xxadmin 阅读:

[导读] 使用crontab自动执行php文件_php定时操作 crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以...

使用crontab自动执行php文件_php定时操作


crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。在这里,我要介绍的是如何在CentOS系统安装crontab。

CentOS系统安装crontab:

[root@CentOS ~]# yum install vixie-cron
[root@CentOS ~]# yum install crontabs(我执行这一步的时候,提示我已经安装了,不知道啥时候安装的)

说明:
vixie-cron软件包是cron的主程序;
crontabs软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。
cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置

查看crontab服务状态:service crond status

手动启动crontab服务:service crond start

查看crontab服务是否已设置为开机启动,执行命令:ntsysv

在CentOS系统中加入开机自动启动:chkconfig --level 35 crond on

CentOS系统 crontab命令

功能说明:设置计时器。

语法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]

补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使 用计时器的功能。其配置文件格式如下:Minute Hour Day Month DayOFWeek Command

参数: 
-e  编辑该用户的计时器设置。 
-l  列出该用户的计时器设置。 
-r  删除该用户的计时器设置。 
-u<用户名称>  指定要设定计时器的用户名称。

在CentOS系统中,以上步骤就完成了安装crontab的安装工作。

简单的说了一下原理,下面解释应该怎么使用。

在使用之前首先通过which PHP命令找到自己的php安装到了哪里,西面能用到,我的打印出来是/usr/local/php/bin/php

为了知道自己写的php到底有没有被调用,在php写了一个简单的文件写入函数,我将当前的时间写入到一个test.txt中,只要查看test.txt, 我就 知道php是有没有调用,什么时候调用,这样就可以大致看出来,自己设置的调用时间是不是被争取执行了。


  1. <?php  

  2.     $fp = fopen("test.txt","a+");  

  3.     fwrite($fp, date('Y-m-d H:i:s')."****"."\r\n");  

  4.     fclose($fp);  

  5. ?>  



php写好后然后配置crontab:

在命令行输入crontab -e,这时会打开一个文本编辑器,上面显示的是你写入的调用列表,如果以前没有编辑过,则打开文件里面什么都没有

在文件里面输入*/1 * * * * /usr/local/php/bin/php test.php,然后保存退出。

在"*/1 * * * * /usr/local/php/bin/php test.php"中,"/usr/local/php/bin/php"是我的php地址,上面已经说过,可以用"which php"命令获取到,如果,你这样写php文件还是没有被调用,你可以尝试将"/usr/local/php/bin/php"后面加上-f。"*/1 * * * * "这段字符串定义了,后面的命令调用的时间,本例中是每分钟调用一次test.php.时间如何设置可以去这里学习http://www.cnblogs.com/OtisBlog/archive/2012/01/30/2332175.html

参考文章:http://os.51cto.com/art/201004/192442.htm

http://www.cnblogs.com/OtisBlog/archive/2012/01/30/2332175.html


自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论