Laravel Mail::send() 非法偏移量 'name'
Laravel Mail::send() illegal offet 'name'
我确定有一个简单的解决方案,但在处理用于 Laravel Mail::send() 的表单输入时,我遇到了 "illegal string offset" 错误。
这是处理表单输入的代码,因为它必须是一个数组。
$msg = array(
'name'=>Input::get('name'),
'email'=>Input::get('email'),
'message'=>Input::get('message')
);
然后我尝试通过Mail::send()发送它。
Mail::send('emails.question', $msg, function($message) {
$message->to('myPersonalEmail@domain.com')->subject('Email from your website!');
});
app/views/emails/question.blade.php 模板非常简单。
{{ $msg['name'] }} <br/>
{{ $msg['email'] }} <br/>
{{ $msg['message'] }}
但是我仍然得到以下错误。
ErrorException (E_UNKNOWN)
Illegal string offset 'name' (View:
[intentionally omitted for privacy]/app/views/emails/question.blade.php)
我认为错误是指 $msg['name'] 不存在,但如果我 return 视图相反,我根本不会收到错误。
return View::make('emails.questions')->with('msg',$msg);
我错过了什么?
您已将 $msg
作为关联数组传递,因此 $msg
数组的项目可用于 $key
的视图。在您的情况下,这意味着 $name
、$email
等。 app/views/emails/question.blade.php现在会变成这样
{{ $name }} <br/>
{{ $email }} <br/>
{{ $message }}
我确定有一个简单的解决方案,但在处理用于 Laravel Mail::send() 的表单输入时,我遇到了 "illegal string offset" 错误。
这是处理表单输入的代码,因为它必须是一个数组。
$msg = array(
'name'=>Input::get('name'),
'email'=>Input::get('email'),
'message'=>Input::get('message')
);
然后我尝试通过Mail::send()发送它。
Mail::send('emails.question', $msg, function($message) {
$message->to('myPersonalEmail@domain.com')->subject('Email from your website!');
});
app/views/emails/question.blade.php 模板非常简单。
{{ $msg['name'] }} <br/>
{{ $msg['email'] }} <br/>
{{ $msg['message'] }}
但是我仍然得到以下错误。
ErrorException (E_UNKNOWN)
Illegal string offset 'name' (View:
[intentionally omitted for privacy]/app/views/emails/question.blade.php)
我认为错误是指 $msg['name'] 不存在,但如果我 return 视图相反,我根本不会收到错误。
return View::make('emails.questions')->with('msg',$msg);
我错过了什么?
您已将 $msg
作为关联数组传递,因此 $msg
数组的项目可用于 $key
的视图。在您的情况下,这意味着 $name
、$email
等。 app/views/emails/question.blade.php现在会变成这样
{{ $name }} <br/>
{{ $email }} <br/>
{{ $message }}