发送邮件 - Yii 2.0

Sending Mail - Yii 2.0

我正在尝试发送邮件,但收到类似这样的错误。

Unknown Property – yii\base\UnknownPropertyException

Getting unknown property: yii\web\Application::mail

Yii::$app->mail->compose()更改为Yii::$app->mailer->compose()后 我收到这个错误

Invalid Parameter – yii\base\InvalidParamException

Invalid path alias:@backend/mail

我没明白我哪里做错了。

我正在使用 yii-app-basic。

config/console.php

...
    'components' => [
        'mailer' => [
            'class' => 'yii\swiftmailer\Mailer',
        ],
    ],
...

config/web.php

...
    'components' => [
        'mailer' => [
            'class' => 'yii\swiftmailer\Mailer',
            'viewPath' => '@backend/mail',
            'useFileTransport' => true,
            'transport' => [
                'class' => 'Swift_SmtpTransport',
                'host' => 'localhost',
                'username' => 'root',
                'password' => '',
                'port' => '8080',
                'encryption' => 'tls',
            ],
        ],
    ],
...

SiteController.php

<?php

namespace app\controllers;

use Yii;
use yii\filters\AccessControl;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\swiftmailer\Mailer;

class SiteController extends Controller
{
    public function actionRegister()
    {
        Yii::$app->mail->compose()
                ->setFrom('enamRaj@gmail.com')
                ->setTo('Raj@infotech.com')
                ->setSubject('This is a test mail')
                ->send();
    }
}

错误截图

我是 Yii 新手。我没有太多的想法。如果这是一个愚蠢的问题,请原谅我。

Mailing- Yii 2.0 寻求帮助。但是,没有太多的想法。 请帮我发邮件

使用mailer组件。

Yii::$app->mailer->compose()

在您的配置中,您编写 components 将在 Yii::$app 应用程序上可用。

示例:

在配置中:

'components' => [
    'myComponent' => ['class' => '\common\MyClass']
]

在控制器中:

Yii::$app->myComponent->foo();

您正在使用基本模板。路径 '@backend/mail' 仅适用于高级模板。正确的路径是@app/mail(或您存储电子邮件模板的任何路径)。

好吧,这是一个老问题,但如果你仍在使用 yii 如果你想毫不费力地发送邮件,请使用 dektrium 它是一个废弃的项目,但它提供了许多功能用户管理电子邮件登录等