cron phpCron PHP必须使用Linux系统进程cronTab来创建一个动态PHP类,您可以通过它了解更多这个Linux课程

CRONTAB促进重复的任务调度。使用安全连接创建Cron PHP时,这为您提供了一种操纵CRONTAB的方法,您可以阅读更多信息这个php文章。

关于Cron.

基本上,Cron提供了在后台运行计划任务的能力。Cron还有助于抓取RSS提要、分析性能、运行清理任务、发送/获取电子邮件或备份SQL数据库,您可以了解更多相关信息在这个SQL课程中。

请记住,每个cron作业将有5个按时间顺序排列的列,每个列代表一个操作符,该操作符具有要执行的完整命令路径:

cron1

每一列都与任务计划有特定的关联:

一周的天数分别用数字0到6表示从周日到周六的一周。

个月代表一个给定年份的月份,按这个顺序从1到12个月

表示给定月份的天数,从1到31。

小时表示给定的一天的小时数,从0到23。

分钟代表给定小时的时间,以该顺序为零至五十九。

cron2

所以,如果你想要每周六早上八十三天运行的任务,你会写:

cron4

如果您想在早上十二个月的每月的第一天安排任务,那么它看起来像:

cron3

您还可以使用一些运算符来自定义计划的任务:

默认情况下,Crontabs在已计划完成的任务时通过电子邮件发送通知。

用php管理cron

您需要执行命令,以便使用PHP管理CRONTAB,您可以了解更多信息这个php 101课程。好消息是,有一种简单的方法可以用PHP实现这一点。你可以从声明4个属性开始:

为了能够访问cronTab并执行命令,您的类需要作为适当的用户进行身份验证和连接。因此,您可能希望与SSH2建立连接并进行身份验证。

当建立了经过身份验证的连接后,您将需要一种方法来处理所执行的所有命令。Exec()可以是此方法的名称。通常,当需要在远程服务器上执行命令时,可以从其他类方法内部调用此方法。

当然,您将需要一种方法来删除和创建cron PHP作业。为此,可以分别用' remove_cronjob() '和' append_cronjob() '定义方法。

这样您就会对您的文件有形,然后需要将CRONTAB写入文件。完成后,您还需要一种删除它的方法。需要将CRONTAB输出处理到文件的方法也需要将“WRITE_TO_FILES()”和文件删除为“remove_files()”。

在只删除了最后一个或唯一一个cron作业的情况下,您将希望能够完全删除cronTab,而不是试图创建一个结果为空的cronTab。要处理这个问题,可以使用' remove_crontab() '方法

对于您的类,您可以创建2个辅助方法。1英石方法返回布尔值并只需检查现有的CRON临时文件。2nd如果存在错误,则使用用于错误消息的方法。这些方法可以分别命名为'crontab_file_exists()'和'error_message()'。

在cron中创造新工作

可以通过在向Cron临时文件添加新行/作业后执行“crontab”命令来完成创建新的Cron作业。“crontab”命令将所有作业安装为新CRONTAB。当发生这种情况时,'append_cronjob()'将拍摄一个参数'$ cron_jobs',它将是一个字符串数组或表示Cron中的作业的字符串。

通过首先确定在$ Cron作业中确定null参数,可以启动此方法。'如果是的,可以使用该方法'error_message()'来显示错误消息并停止向用户的任何执行。

cron6

然后,新变量'$ ampend-cronfile'然后可以定义为一个字符串,其中“echo”文本后跟一个单引号和结束时的空格。可以使用您添加的Cron的各种作业填充此字符串以及结束引号。您可以使用字符串连接运算符(。=)来构建此字符串。

确定@cron_jobs是数组还是不使用三元运算符。如果是这样,您可以将新行添加到此数组\ n,以便在Cron文件中写入每个作业的所有作业。当'$ cron_job'不是数组时,您可以在字符串'$ chepend_cron'上连接此作业,而无需任何其他额外的进程。这样,您将拥有一个正确的格式,无论您是否正在处理数组。

通过将标准输出重定向到文件中,任务只能回应Cron文件。使用'='。您可以开始将单个关闭报价附加到Linux运算符>>和字符串命令后跟Cron文件的文件名和完整路径。与始终获取文件的操作员覆盖,>>将输出附加到文件端。

cron7

换句话说,当这是您使用的操作符时,您可以确保不会覆盖任何已经存在的cron作业。接下来,您可以检查您的代码是否安全编写,您可以了解更多关于in的内容这个PHP安全课程。

PHP的顶级课程

PHP为初学者 - 成为PHP大师 - CMS项目
Edwin Diaz,编码教师解决方案
4.4 (19471)
畅销书
PHP初学者
Tim Buchalka的学习编程学院,Dave Hollingworth
4.6 (1515)
面向对象的PHP和MVC
布拉德Traversy
4.7 (3761)
完整的PHP OOP概念绝对初学者+项目
Srinivas Vanamala.
4.9 (315)
面向对象编程:面向初学者+项目
Edwin Diaz,编码教师解决方案
4.5 (3271)
PHP初学者:如何建立一个电子商务商店
Edwin Diaz,编码教师解决方案
4.7 (1571)
畅销书
PHP单位测试PHPUNIT
戴夫霍灵沃斯
4.7 (1,072)
畅销书
PHP登录和注册系统-电子邮件确认激活
Edwin Diaz,编码教师解决方案
4.5 (794)
PHP为初学者2021第2部分:PDO,MYSQL,PHPMYADMIN
帕特里克•莫罗
4.9 (246)
评价最高
PHP与Laravel初学者-成为Laravel大师
Edwin Diaz,编码教师解决方案
4.4 (9,946)
畅销书

更多的PHP课程

PHP学生还学习

让你的团队。领导行业。

通过Udemy为Business获取组织的在线课程和数字学习工具库的订阅。

请求一个演示