Laravel Mail没有将变量传递到刀片模板

时间:2018-11-21 13:39:22

标签: php laravel

我有两个函数,第一个可以正常工作,但是第二个则不能,在第二个函数中,出现在邮件中的变量是{{$$ variableName}}未呈现的。

我已经检查了尽可能多的关于SO的其他帖子,但没有解决方案。

在下面的示例中,第一个$userName正确地加载到邮件中,而在第二个示例中,所有变量都显示为带有美元符号的变量名称。

我可以确认$data变量正确无误,甚至可以使用该变量中的数据正确发送邮件。

public function workingMail($emailAddress,$userName) {
    $message = '';
    \Mail::send('workingtemplate', [
        'userName' => $userName
    ], function ($message) use ($emailAddress) {
        $message->from($this->fromAddress, $this->$this->fromAddressName);
        $message->to($emailAddress);
        $message->subject('Sample Subject');
    });
}

public function notWorkingMail($data) {
    $message = '';
    foreach($data['namesAndAddress'] as $person) {
        \Mail::send('notworkingtemplate', [
            'name' => $person['name'],
            'link' => $data['link'],
            'fileName' => $data['fileName'],
            'timeStamp' => $data['timeStamp'],
            'action' => $data['action'],
            'placeAddress' => $data['placeAddress']
        ], function ($message) use ($person,$data) {
            $message->from($this->fromAddress, $this->fromAddressName);
            $message->to($person['email']);
            $message->subject($data['placeAddress'].' files have been updated.');
        });
    }
}

谢谢。

1 个答案:

答案 0 :(得分:1)

我忘记将.blade添加到php文件的名称中。我一开始就很好用。