发送邮件 - 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 它是一个废弃的项目,但它提供了许多功能用户管理电子邮件登录等
我正在尝试发送邮件,但收到类似这样的错误。
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 它是一个废弃的项目,但它提供了许多功能用户管理电子邮件登录等