在 Ubuntu 下,您可以使用以下两种方法来实现 PHP 定时任务:
方法一:使用 Cron 任务
打开终端。
输入 crontab -e 命令来编辑当前用户的 Cron 配置文件。如果您是第一次使用 Cron,请按照提示创建一个新的配置文件。
在打开的配置文件中,添加一行新的 Cron 任务。Cron 任务的格式如下:
* * * * * /usr/bin/php /path/to/your/script.php
这里的五个星号分别表示分钟(0-59)、小时(0-23)、月份中的某天(1-31)、月份(1-12)和星期中的某天(0-7,其中 0 和 7 都表示星期日)。您需要根据实际需求调整这些值。
例如,如果您希望每天凌晨 1 点执行 PHP 脚本,您可以这样设置:
0 1 * * * /usr/bin/php /path/to/your/script.php
方法二:使用 Systemd 定时器
/etc/systemd/system/ 目录下创建一个名为 my-php-script.service 的文件,内容如下:[Unit]
Description=My PHP Script
[Service]
Type=simple
ExecStart=/usr/bin/php /path/to/your/script.php
将 /path/to/your/script.php 替换为您的实际 PHP 脚本路径。
/etc/systemd/system/ 目录下创建一个名为 my-php-script.timer 的文件,内容如下:[Unit]
Description=Run My PHP Script every day at 1 AM
[Timer]
OnCalendar=*-*-* 01:00:00
Persistent=true
[Install]
WantedBy=timers.target
这将设置一个定时器,每天凌晨 1 点触发 my-php-script.service。
sudo systemctl daemon-reload
sudo systemctl enable --now my-php-script.timer
现在,您的 PHP 脚本将按照指定的时间执行。您可以使用 sudo systemctl list-timers 命令查看所有定时器的状态。