添加IF语句时Laravel错误

时间:2019-02-05 02:21:15

标签: php laravel

我最近从我之前的开发人员那里继承了一些网站,并且在向他的代码添加简单的IF语句时遇到了麻烦。

该页面仅表示“发生了错误”,并且没有任何内容写入日志文件夹。

代码如下:

protected function sendContactEmail($data)
{
    $enquiry = $data['enquiry'];
    $email = $data['email'];
    $name = $data['name'];

    if($enquiry=='General Enquiry'){
        $to = '********';
        $cc = '********';
    }
    else if($enquiry=='Product Feedback'){
        $to = '********';
        $cc = '********';
    }
    else { //Trade Enquiry
        $to = '********';
    } 

    //email to admin
    Mail::send('contact.email.contact-admin', $data, function ($message) use ($enquiry) {
        $message->from('no-reply@********.com.au', '********');
        $message->replyTo('no-reply@********.com.au', '********');
        $message->subject($enquiry);
        $message->to($to);
        $message->cc($cc);
    });

    //email to user
    Mail::send('contact.email.contact-user', $data, function ($message2) use ($email) {
        $message2->from('no-reply@********.com.au', '********');
        $message2->replyTo('no-reply@********.com.au', '********');
        $message2->subject('********');
        $message2->to($email);
    });
}

有人对从哪里开始有任何想法吗?

1 个答案:

答案 0 :(得分:5)

$to$cc变量都不从Mail::send中传递的Closure的父范围继承。

必须在使用语言构造中指定两个变量。 1

Mail::send('contact.email.contact-admin', $data, function ($message) use ($enquiry, $to, $cc) {
    $message->from('no-reply@********.com.au', '********');
    $message->replyTo('no-reply@********.com.au', '********');
    $message->subject($enquiry);
    $message->to($to);
    $message->cc($cc);
});