在Laravel 5.1中将数据发送到电子邮件模板时出错

时间:2015-12-26 00:18:48

标签: php laravel-5 laravel-5.1

下面是我在Blade中的html

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        Hi {!! $Data->ContractorUserName !!},


        Thanks
    </body>
</html>
下面的

是传递给电子邮件功能参数的数据。

$data = array(
    "ContractorUserName"    =>  $Bid->WhoPlacedBid->UserName
);

以下是发送电子邮件的代码

\Mail::send('Project.Emails.Award', array('Data', $data), function($message) 
{
    $message
            ->to('EmailAddress', 'EmailAddress')
            ->subject('hi');
});

错误详情

  

未定义变量:数据

请告知我是否遗漏了什么?

1 个答案:

答案 0 :(得分:1)

当您通过Mail::send进程将数据传递到电子邮件时,数组实际上并未作为整体传递 - 只是单个变量。

尝试这样做:

$data = array(
    "ContractorUserName"    =>  $Bid->WhoPlacedBid->UserName
);

Mail::send('Project.Emails.Award', $data, function($message) 
{
    $message
            ->to('EmailAddress', 'EmailAddress')
            ->subject('hi');
});

然后在视图中访问它:

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        Hi {!! $ContractorUserName !!},


        Thanks
    </body>
</html>