(下面写了怎么实现让自己的qq邮箱可以用代码发邮件)
- 修改yii框架下的common\config下的main-local.php文件 (见图一)
(里面原来就有mailer这个数组,把它修改成下面例子中的那样).
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
'useFileTransport' =>false,//这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.qq.com', //每种邮箱的host配置不一样
'username' => '2121212@qq.com', //你的邮箱
'password' => '124335fsggsdfg', //你的密码
'port' => '465',
'encryption' => 'ssl', //加密方式
],
'messageConfig'=>[
'charset'=>'UTF-8',
'from'=>[
'1243254235@qq.com'=>'admin'
]
],
],
发送邮件方法: (见图二)
/**
* 发送邮件
*/
public function actionEmails(){
$mail = Yii::$app->mailer->compose(); //加载配置的组件
$mail->setTo('2464802117@qq.com'); //要发给谁
$mail->setSubject("鸡蛋媒资"); //标题 主题
$mail->setHtmlBody("我我我我"); //要发送的内容
if ($mail->send()){
echo “成功”;
}else{
echo “失败”;die();
}
}
图一
图二
发送失败的问题
一、QQ邮箱 开启 SMTP服务,直接通过网站发邮件
1.进入QQ邮箱首页
2.点击 设置->账户 (见图三)
3,鼠标往下滚,3分之二左右找到"POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务"。然后 POP3/SMTP服务点开启,然后记住授权码,
4.如果忘记了,下面有个获取授权码的按钮(见图四)
最后保存设置
图三
图四