php - crontab 定时执行任务所定的时间怎么做成活的?
本文介绍了php - crontab 定时执行任务所定的时间怎么做成活的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
拿yii2框架来讲:
定时配置文件console\config\params.php
配置如下:
问题:
1、把上图红框部分的定时从数据库获取,遇到
`PHP Fatal error: Call to a member function getDb() on null in /home/wwwroot/default/ceshi/vendor/yiisoft/yii2/db/ActiveRecord.php on line 133`
错误,怎么解决?
2、yii2 的params.php如何获取数据库数据?
解决方案
写成匿名函数的形式呢
return [
'adminEmail'=>'admin@xx.com',
'cronJobs'=>[
'contact/send'=>[
//code
],
'contact/hsend'=>[
'cron'=>function(){
//todo 获取数据库中的定时配置(可以在外面写个自定义函数获取)
$_cron2 = you_function();
return $_cron2;
}
]
]
]
<?php
$data = [
'cronJobs'=>[
'send'=>[
//code
],
'hsend'=>[
'cron'=>function(){
return '888888';
}
]
]
];
echo $data['cronJobs']['hsend']['cron'](); //这么写
这篇关于php - crontab 定时执行任务所定的时间怎么做成活的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文