laravel7.3版本发送富文本邮件问题
$a={email:890809809@qq.com};
Mail::send('mail.index',['name'=>'张三'],function(Message $message)use($a)
{
$message->to($a->email);
$message->subject('开通账号通知');
})
这里面我想问一下大佬为什么不直接在回调函数里面把$a直接写进去传给回调函数,而要用use($a)引用外部变量呢?
多此一举呢?就是直接
function(Message $message,$a){
$message->to($a->email);
$message->subject('开通账号通知');
};
找了好多文章都没有说清楚,请问社区大佬有没有一个通俗的解释。
关于 LearnKu
区别的话 看这段代码
匿名函数的语法问题,匿名函数使用外部变量问题,熟悉下就知道你那样用不行的
@PFinal南丞 结果都一样啊哦!老大~
一楼已给答案。语法问题,看看
use的解释。Message $message是契约,将在执行的时候系统注入这个$message。@hxlnt 是结果一样呀, 但是
这段代码 在调用的时候 你得 在函数外面把
$b传递进去,在不确定 你传递参数是几个的时候, 这段代码修改起来就很麻烦了