1

我想在 yii2 advanced 中自动运行我的操作方法。我将代码放在控制台/控制器上。这是代码:

邮件控制器.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';
        }
    }
}

?>

然后我从任务计划程序的操作菜单中进行此配置:

程序/脚本:C:\xampp\php\php.exe

添加参数(可选):-f C:\xampp\htdocs\Baru\advanced\console\controllers\MailController.php

我想运行发送操作。但是任务计划程序中的结果是 0xFF,我没有收到电子邮件。有什么问题?

4

1 回答 1

2

您需要以这种方式调用控制器操作:

C:\xampp\php\php.exe c:\path\to\your\application\yii mail/send

或者

c:\path\to\your\application\yii.bat mail/send

您正在调用 yii,而不是直接调用控制器脚本。控制器和动作(路由)只是一个参数。

有关更多信息,请参见此处指南

于 2016-06-13T06:37:49.523 回答