【发布时间】:2021-07-22 12:27:17
【问题描述】:
我正在使用 laravel 6。有几个使用邮件功能的控制器。我想创建一个函数,通过许多控制器将 laravel 中的邮件函数重用,这样我就可以在任何地方调用它
Utils::sendGmail($param, $param2)
或
Utils->sendGmail($param, $param2)
这是我到目前为止所做的(也通过谷歌搜索可能与我的案例相关的几个关键字):
<?php
namespace App\Http\Controllers;
use Mail;
class Utils {
public function sendGmail($email, $data, $subject, $msgBlade) {
global $myemail;
$myemail = $email;
$data = $data;
$subject = $subject;
$msgBlade = $msgBlade;
Mail::send($msgBlade, $data, function($send) use ($data){
$send->to($myemail)->subject($subject);
});
}
}
但返回以下错误:
ErrorException
Undefined variable: myemail
你能告诉我如何解决这个问题吗?谢谢。
【问题讨论】:
-
$myemail未在匿名函数范围内定义use ($data, $myemail).. 可能应该得到关于$subject的相同通知/错误