我最近从我之前的开发人员那里继承了一些网站,并且在向他的代码添加简单的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);
});
}
有人对从哪里开始有任何想法吗?
答案 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);
});