laravel - laravel 发送邮件到
问题描述
大家晚上好,我有一些问题,发送邮件到:我在控制器中有一个代码,并且从数据库中获取了连接数据,这个 $survey 变量显示给了我属于团队的调查的电子邮件。但是我需要一些如何为我从 $survey 变量中获得的所有电子邮件发送电子邮件。当我将 $survey 变量放入 $message->to($survey); 它向我展示了未定义的变量
我的代码如下,我该如何使用它。当我输入 ->to(); 正常的一个电子邮件地址它可以工作,但我需要向所有团队成员发送相同的电子邮件
public function startSurvey(Request $req) {
$nameSurvey = $req->input('SurveySelectBox');
$startDate = $req->input('surveyStartDate');
$endDate = $req->input('surveyEndDate');
$data = array(
'updated_at' => Carbon::now(),
'started_at' => $startDate,
'ended_at' => $endDate
);
DB::table('survey')->where('surveyId','=',$nameSurvey)->update($data);
$survey = Survey::where('surveyId' , '=', $nameSurvey)
->join('team','team.teamId', '=', 'survey.teamId')
->join('teammembersall','teammembersall.TeamId', '=', 'team.TeamId')
->join('users','users.id', '=', 'teammembersall.UserId')
->select('users.email')
->get();
Mail::raw('You have new survey to answer: http://localhost:8000/profile', function ($message) {
$message->from('kristijanask@gmail.com', 'New Survey released');
$message->to($survey);
});
return redirect('surveyDrafts');
}
解决方案
您需要使用use ($survey)
Mail 匿名函数中的变量:
Mail::raw('...text', function ($message) use ($survey) {
$message->from('kristijanask@gmail.com', 'New Survey released');
$message->to($survey);
});
您可能还需要在查询结果上使用->pluck()
和toArray()
,以使结果成为数组:
$survey = Survey::where('surveyId' , '=', $nameSurvey)
// long query
->get()
->pluck('email')
->toArray();
推荐阅读
- python-3.x - 将 DataBricks 连接到 Azure Blob 存储
- mysql - 使用 mysql 数据库时无法启动 gophish
- typescript - NestJS如何在管道中访问抽象控制器中的存储库
- django - 创建用于添加测验问题的 Django Web 应用程序的逻辑
- arm - STM32F103C8 LED 闪烁
- angular - 如何在数组中显示来自多个复选框的数据?角应用
- javascript - Nodejs从HTTP请求中丢失数据
- javafx - JavaFX Tab 将进度指示器设置为标题
- css - 让 css 类根据路由路径动态更改,但未按预期运行
- vba - 从 VBA 检查串口是否为空