文章來源:https://www.yiichina.com/tutorial/320
1.在配置文件main-local.php components=>[]裏面配置
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'useFileTransport' =>false,//這句一定有,false發送郵件,true只是生成郵件在runtime文件夾下,不發郵件
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.163.com', //每種郵箱的host配置不一樣
'username' => '[email protected]',
'password' => '*******',
'port' => '25',
'encryption' => 'tls',
],
'messageConfig'=>[
'charset'=>'UTF-8',
'from'=>['[email protected]'=>'admin']
],
],
- controller控制器中 代碼:
<?php
$mail= Yii::$app->mailer->compose();
$mail->setTo('***********@qq.com');
$mail->setSubject("郵件測試");
//$mail->setTextBody('zheshisha '); //發佈純文字文本
$mail->setHtmlBody("<br>問我我我我我"); //發佈可以帶html標籤的文本
if($mail->send())
echo "success";
else
echo "failse";
die();
?>
ok,這樣就可以發送郵件了
如需加載模板 把$mail= Yii::$app->mailer->compose();
修改成 $mail= Yii::$app->mailer->compose('xiaoma',['aa'=>222]);
注:aa是想xiaoma.php裏面傳遞的參數。
郵件模板 xiaoma.php裏面的代碼 :
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $user common\models\User */
$resetLink = Yii::$app->urlManager->createAbsoluteUrl(['site/reset-password', 'token' => $aa]);
?>
< a href="#" ><?php echo $resetLink ?></a>
加載模板的郵件代碼:
$mail= Yii::$app->mailer->compose('xiaoma',['aa'=>222]);
$mail->setTo('[email protected]');
$mail->setSubject("郵件測試");
$mail->setTextBody('zheshisha ');
if($mail->send())
echo "success";
else
echo "failse";
die();