Yii2邮件发送
来源:互联网 发布:何炅主持的网络节目 编辑:程序博客网 时间:2024/05/20 23:35
基础版
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' => '15618380091@163.com', 'password' => '*******', 'port' => '25', 'encryption' => 'tls', ], 'messageConfig'=>[ 'charset'=>'UTF-8', 'from'=>['15618380091@163.com'=>'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('1401619705@qq.com'); $mail->setSubject("邮件测试"); $mail->setTextBody('zheshisha '); if($mail->send()) echo "success"; else echo "failse"; die();
文章链接 http://www.yiichina.com/tutorial/320
希望对你们有帮助!
高级版
邮件发送配置:
打开配置文件将下面代码添加到 components => [...]中(例:高级版默认配置在/common/config/main-local.php)
'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'viewPath' => '@common/mail', 'useFileTransport' => false, //这里一定要改成false,不然邮件不会发送 'transport' => [ 'class' => 'Swift_SmtpTransport', 'host' => 'smtp.163.com', 'username' => 'xianan_huang@163.com', 'password' => '*********', //如果是163邮箱,此处要填授权码 'port' => '25', 'encryption' => 'tls', ], ],
在控制器中调用:
$mail = \Yii::$app->mailer->compose() ->setFrom(['xianan_huang@163.com' => 'Yii 中文网']) ->setTo('391430388@qq.com') ->setSubject('邮件发送配置') //->setTextBody('Yii中文网教程真好 www.yii-china.com') //发布纯文字文本 ->setHtmlBody("<br>Yii中文网教程真好!www.yii-china.com") //发布可以带html标签的文本 ->send(); if($mail) echo 'success'; else echo 'fail';
注意:很多报错原因都是因为163邮箱的smtp没有开,进入邮箱设置一下
默认不开启smtp要绑定手机之后才能开启
开启之后会给你一个授权密码,只会发送一次,要保存好,然后在上面密码出写上授权密码,并非邮箱密码。
文章地址链接 http://www.yii-china.com/post/detail/10.html 0 0
- yii2实现邮件发送
- yii2 邮件发送笔记
- yii2 - 邮件发送-示例
- yii2 邮件发送
- yii2发送邮件教程
- yii2发送邮件
- YII2邮件发送
- yii2.0 邮件发送
- Yii2 之邮件发送
- yii2 发送邮件
- yii2 发送邮件
- yii2发送邮件
- Yii2邮件发送
- Yii2.0 发送邮件
- yii2 邮件发送教程
- yii2 邮件发送
- Yii2.0 发送邮件
- yii2框架发送邮件
- 浅谈拒绝服务攻击的原理与防御(4):新型DDOS攻击 – Websocket和临时透镜
- MySQL视图
- 欢迎使用CSDN-markdown编辑器
- 使用opencv在图片中加入文字
- 95. Unique Binary Search Trees II
- Yii2邮件发送
- Set和Map数据结构
- leetCode---Subsets II
- 关于通过artTemplate模板的方式实现城市的联动
- Struts2获取表单数据
- java基础思维导图
- 二分查找整理
- 集线器与交换机的区别
- 源码简读之Gson解析