【发布时间】:2018-05-03 07:03:03
【问题描述】:
我正在处理yii2。我有一个创建功能,我想每 24 小时后在后台运行一次。
public function actionCreate()
{
$model = new MeterPing();
// CURL code to get results from web-api
if ($model->load(Yii::$app->request->post()) && $model->save()) {
return $this->redirect(['view', 'id' => $model->id]);
} else {
return $this->render('create', [
'model' => $model,
]);
}
}
同样在这个函数中,我将从web-API 获取一些记录。但我主要关心的是每 24 小时后在后台运行上述功能。
更新 1
根据给出的建议,我在 console\controller 创建了一个控制器
namespace console\controllers;
use yii\console\Controller;
class TestController extends Controller {
public function actionIndex() {
echo "cron service runnning";
}}
现在,为了测试它,我遵循了这个link 并使用cmd 和以下参数创建了一个运行服务
现在,按照建议,我已经尝试了每个步骤。 .bat 文件包含
@Echo off
title My Cron Job
:: See title at the top
php E:\xampp\htdocs\inventory-web\yii test
pause
保存文件并将其添加到任务计划程序后。我试图从这个界面运行它。我确实看到了一个 cmd 打开并显示了消息。
我该怎么做?任何帮助将不胜感激。
【问题讨论】:
-
按照下面的答案创建一个 cronjob
-
@MuhammadOmerAslam 给定的链接适用于 linux,但我希望它适用于 windows。虽然我已经创建了一个测试 cronjob,但我仍然无法让它每分钟都运行。
-
是您尝试设置 cron 的本地系统吗?
-
是的,现在我使用的是本地系统
-
一定要慢慢来,我以为你忘了:D
标签: php controller background yii2