这次我们来介绍使用symfony发邮件,很简单我们使用的163邮箱。
在自己的163邮箱中开启SMTP服务
1、开启smtp服务,来到163邮箱【设置】- 【POP3/SMTP/IMAP】
开启SMTP服务
2、设置客户端授权码,自动发邮件使用的是授权码,不是登录密码(symfony中163邮箱也是这样,使用授权码作为密码)
这样就开启了SMTP服务了
在symfony发送邮件,就三步
1. 配置
1 2 3 4 5 6 |
# app\config\parameters.yml parameters: mailer_transport: smtp mailer_host: smtp.163.com mailer_user: XXXXXXXXXX@163.com mailer_password: XXXXXXXXX |
2. 创建Action
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
/** * @Route("/sendmail", name="sendmail") */ public function sendmailAction(Request $request) { $message = \Swift_Message::newInstance() ->setSubject('Hello Email') ->setFrom('XXXXXXXX@163.com') //在配置文件中配置的邮箱,发送方 ->setTo('recipient@qq.com') //接收方 ->setBody( $this->renderView( // app/Resources/views/default/email.html.twig 'default/email.html.twig', array() ), 'text/html' ) ; $this->get('mailer')->send($message); return $this->render('default/index.html.twig', []); } |
3. 创建邮件内容,其实就是创建一个twig模板
1 2 |
# app\Resources\views\default\emailone.html.twig <h3>测试邮件</h3> |