以下是对Yii框架来说明的
1.common/config/main.php中配置邮件发送者信息
如:
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
'useFileTransport' => false,//这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.exmail.qq.com', //每种邮箱的host配置不一样
'username' => 'xiaowang@jwsem.com', //发送者邮箱账号
'password' => '123456', //发送者邮箱密码
'port' => '465',
'encryption' => 'ssl',
],
'messageConfig' => [
'charset' => 'UTF-8',
'from' => ['xiaowang@jwsem.com' => '小王']
],
],
2.项目中邮件发送(邮件配置文件的调用)
\Yii::$app->mailer->compose()
->setFrom(['xiaowang@jwsem.com'=>'小王']) //邮件发送者
->setTo(['xiaozhang@jwsem.com','xiaoma@jwsem.com']) //邮件接收者,可为多个人
->setSubject('邮件的标题') //邮件的标题
->setTextBody('姓名:小李, 电话:12345667, 公司:阿里巴巴, 地址:杭州总部‘)//邮件内容
->send();
注:如果发送的邮件是一个页面内容,写法如下
\Yii::$app->mailer->compose(['html' => 'trial-product'], [ //trial-product文件在common/mail下面
'productName' => $this->productName,
'endTime' => date('Y-m-d', time() + 3600 * 24 * $this->days),
'downUrl' => $this->downLoadUrl
])
->setFrom(['xiaowang@jwsem.com' => '小王'])
->setTo('xiaozhang@jwsem.com')
->setSubject('邮件的标题')
->send();