所以我正在进行这个项目,我自己也在研究它,但到目前为止我所做的一切都没有自动生效。我想要的是一种自动更新我的表的方法,而不必通过加载网站手动执行命令。
使用任何您想要更新的东西,将页面作为正常的php函数
使用crontab-e在服务器中设置cron选项卡
然后像这个一样编辑cronjob
59 23 * * 0 /var/www/somedirectory/somephpfile.php
cron选项卡在每个星期日下午11.59运行代码一次
上述代码的说明
[Minute] [Hour] [Day] [Month] [Day of week (0 =sunday to 6 =saturday)] [Command]
这是crontab参考
您可以做的另一件事是,在连接到数据库的config.php中,设置一个函数来检查数据库中的DATETIME字段,如果现在>lastUpdate+7days,则执行更新并将字段设置为now()。
这样,每当执行任何php脚本时,它都会检查并采取相应的行动。
这不是一个非常健康的方法,但如果您由于某种原因无法使用cron作业,它会避免使用它们。
function regularUpdate()
{
$lastUpdate = $mysqlconnector->query("select last_update from your_table");
if(time() > strtotime($lastUpdate)+(60*60*24*7))
{
//do your updating
}
}
您可以使用MySQL事件来安排作业:https://dev.mysql.com/doc/refman/5.7/en/event-scheduler.html