手记

laravel5.4 、5.5、5.6发送邮件

一、设置邮箱的smtp打开这里我以163邮箱为例,其他邮箱一样

        1、登录163邮箱 - 打开设置-  POP3/SMTP/IMAP - 将其打开

                    

将前面的√打上,默认是关闭的

这里是查看和设置授权密码,也就是等下要在laravel填写的密码

二、larvel 添加邮件发送组件

        1、首先安装 Guzzle HTTP 函数库 这里使用的 Composer 安装,

                    composer require guzzlehttp/guzzle

          2、 生成邮件在 Laravel 中,每种类型的邮件都代表一个「Mailable」对象。这些对象存储在 app/Mail 目录中。如果在你的                     应用中没有看见这个目录,别担心,在首次使用 make:mail 命令创建 Mailable 类时这个目录会被创建,例如:

                            php artisan make:mail 文件名字          例如:php artisan make:mail OrderShipped

            3、配置

                        所有的邮件配置文件都在  config/mai.php

                        driver    =>    ‘smtp’    //驱动

                        host      =>    'smtp.163.com'     //主机

                        port        =>    '465'                //端口

                        from        =>[

                                    'address' =>daxue_weixiao@163.com ,     //发送人邮件地址

                                    'name' => '测试邮件名称',                    //发送人名字

                                ],                       //如果这里配置了,则所有的邮件发送都会统一使用这里的发件人,当然也可以在发,每一封邮件时指定邮件人

                            

                    encryption    =>     'ssl'

                    username     =>    daxue_weixiao@163.com            发件人的邮箱账号

                    password       =>    授权码(就是第一步邮箱设置的授权码)

                配置完毕,可以写代码了

三、开始写代码,发送邮件

            1、在第二步骤  第2小步,我生成了一个OrderShipped.php的文件,所以找到这个文件位                                                             置/app/Mail/OrderShipped.php

                    在build 方法里面编写你要发送的邮件模板内容        

                    public function build()

                    {

                          return $this

                                ->subject('验证码')    //邮件主题

                                ->view('email');        //邮件模板,你要创建相应的模板

                    }


        如果想要传参数到模板,比如验证码,就可以设置公共的属性参数,那么视图就可直接使用了

            public $rand;

            public function __construct($rand)

            {

                   $this->rand= $rand;

            }

        所以最后的我的OrderShipped.php文件的代码如下

        

    2、使用 OrderShipped.php 发送邮件

            在你需要发送邮件的控制器的方法就可以使用OrderShipped.php发送邮件啦

    

to里面是要发给谁的邮箱地址



作者:xiaoer0128
链接:https://www.jianshu.com/p/7941792b5146


0人推荐
随时随地看视频
慕课网APP