laravel发送邮件

1.安装驱动函数库

composer require guzzlehttp/guzzle
2.配置 config/mail.php文件,在env里面加载,这里的password是在邮箱配置的时候生成的验证密码。。而不是邮箱密码

MAIL_DRIVER=smtp
MAIL_HOST=smtp.163.com
MAIL_PORT=465
MAIL_USERNAME=YOUR@EMAIL.COM
MAIL_PASSWORD=YOUR-163-PASSWORD
MAIL_FROM=YOUR@EMAIL.COM
MAIL_NAME=YOUR-NAME
3.命令生成,在App/Mail下面生成一个文件ArticleShipped.php
php artisan make:mail ArticleShipped

文件内容如下

namespace App\Mail;




use App\Article;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class ArticleShipped extends Mailable implements ShouldQueue
{
    use Queueable, SerializesModels;
  protected $article;
    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct(Article $article)
    {
        //
        $this->article = $article;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->view('emails.sendStatus')
            ->from('1606548133@qq.com')
            ->with([
                'ArticleTile' => $this->article->title,
                'ArticleContent' => $this->article->content,
            ]);
//        return $this->view('emails.sendStatus');
    }
}
4.创建controlle

php artisan make:controller ArticleController
文本内容如下:

<?php


namespace App\Http\Controllers;
use App\Article;
use App\Mail\ArticleShipped;
use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Mail;

class ArticleController extends Controller
{
    public function send(Request $request)
    {
        $name = '尹冲';
        $flag = Mail::send('emails.sendStatus',['name'=>$name],function($message){
            $to = '1606548133@qq.com';
            $message ->to($to)->subject('测试邮件');
        });//这里($flag是没有返回值的。这样写不太妥当)
        if($flag){
            echo '发送邮件成功,请查收!';
        }else{
            echo '发送邮件失败,请重试!';
        }
    }

//另一种方法:这个需要穿参数email
    
public function ships(Request $request)
{
    $article = Article::findOrFail(1);
  
    $user=$request->email;
    Mail::to($user)->send(new ArticleShipped($article));
}



}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值