利用yii 2框架发送电子邮件

 3636

利用yii 2框架发送电子邮件


利用yii 2框架发送电子邮件,具体步骤如下所示:


1、config/web.php中开启邮箱配置

  1. 'mailer' => [
  2.     'class' => 'yii\swiftmailer\Mailer',
  3.     // send all mails to a file by default. You have to set
  4.     // 'useFileTransport' to false and configure a transport
  5.     // for the mailer to send real emails.
  6.     'useFileTransport' => false,//true表示只生成文件不发
  7.     'transport' => [
  8.         'class' => 'Swift_SmtpTransport',
  9.         'host' => 'smtp.qq.com',  //每种邮箱的host配置不一样
  10.         'username' => 'xxxxx@qq.com',//改成自己的邮箱
  11.         'password' => 'xxxxxxxx',//改成自己的邮箱token
  12.         'port' => '465',
  13.         'encryption' => 'ssl',
  14.     ],
  15.     'messageConfig'=>[
  16.         'charset'=>'UTF-8',
  17.         'from'=>['xxxxx@qq.com'=>'YiiAdmin']//邮件显示名称
  18.     ],
  19. ],


2、SiteController.php控制器文件添加

  1. public function actionSendMail(){
  2.     $mail= Yii::$app->mailer->compose('reset-password',['token'=>'xxxxxx']);
  3.     // 渲染一个视图作为邮件模板 文件路径mail/reset-password.php,注意,不在view中
  4.     $mail->setTo('xxxxx@hotmail.com');//要发送到的邮箱地址
  5.     $mail->setSubject("邮件测试【重置密码】");//邮件标题
  6.     if($mail->send())
  7.         echo "success";
  8.     else
  9.         echo "failse";
  10.     die();
  11. }


3、视图文件

视图文件的输出就是邮件的内容

  1. <?php
  2. $resetLink = Yii::$app->urlManager->createAbsoluteUrl(['site/reset-password', 'token' => $token]);
  3. ?>
  4. <div>
  5.     <h5>密码重置服务</h5>
  6.     <a href="<?=$resetLink?>">点击重置密码</a>
  7. </div>


4、访问 http://127.0.0.1/base/web/index.php?r=site/send-mail

出现 success则发送成功,若未收到确认邮箱已开启pop3服务


利用yii 2框架发送电子邮件

TAG标签:
本文网址:https://www.zztuku.com/detail-8844.html
站长图库 - 利用yii 2框架发送电子邮件
申明:如有侵犯,请 联系我们 删除。

评论(0)条

您还没有登录,请 登录 后发表评论!

提示:请勿发布广告垃圾评论,否则封号处理!!

    编辑推荐

    5款自定义单选按钮
    Uniapp如何实现支付宝支付的功能