使用任务调度器运行yii2脚本
我想在yii2 advanced中自动运行我的操作方法。我把代码放在控制台/控制器上。代码如下: MailController.php使用任务调度器运行yii2脚本,yii2,taskscheduler,Yii2,Taskscheduler,我想在yii2 advanced中自动运行我的操作方法。我把代码放在控制台/控制器上。代码如下: MailController.php <?php namespace console\controllers; use Yii; use yii\console\Controller; use Swift_TransportException; class MailController extends Controller { public function actionSend
<?php
namespace console\controllers;
use Yii;
use yii\console\Controller;
use Swift_TransportException;
class MailController extends Controller
{
public function actionSend()
{
$mail = Yii::$app->mailer->compose()
->setFrom('if414024@students.del.ac.id')
->setTo('if414024@students.del.ac.id')
->setSubject('Testing');
try
{
$mail->send();
}
catch (Swift_TransportException $ste)
{
echo 'error';
}
}
}
?>
然后,我从任务计划程序中的“操作”菜单进行此配置:
程序/脚本:C:\xampp\php\php.exe
添加参数(可选):-fc:\xampp\htdocs\Baru\advanced\console\controllers\MailController.php
<?php
namespace console\controllers;
use Yii;
use yii\console\Controller;
use Swift_TransportException;
class MailController extends Controller
{
public function actionSend()
{
$mail = Yii::$app->mailer->compose()
->setFrom('if414024@students.del.ac.id')
->setTo('if414024@students.del.ac.id')
->setSubject('Testing');
try
{
$mail->send();
}
catch (Swift_TransportException $ste)
{
echo 'error';
}
}
}
?>
我想运行发送操作。但是任务调度程序中的结果是0xFF,我没有收到电子邮件。有什么问题吗?您需要通过以下方式调用控制器操作:
C:\xampp\php\php.exe c:\path\to\your\application\yii mail/send
或
您正在调用yii,而不是直接调用控制器脚本。控制器和操作(路由)只是一个参数
有关详细信息,请参阅或。请指导在任务计划程序中放置此命令的位置。我没有试图发送邮件,而是需要在表中插入一行。当我在控制台中运行控制器/操作时,我能够插入一条记录。但是当运行任务调度器时,记录不会保存在数据库中。任务计划程序中有两个字段。程序和参数。把你的答案放在哪里。我在调度程序中没有遇到任何类型的错误。将显示任务已成功完成。