我正在使用smtp
驱动程序,这是我在laravel 5.2中发送电子邮件的代码:
public function Sendmail()
{
$data["mail_message"] = "Hello!";
if(Mail::send('Emails.email', $data, function($message)
{
$message->from('webmaster@example.com', Input::get('name'));
$message->to('amirhasan.hesam@gmail.com')->subject('Welcome to My Laravel app!');
}))
{
return "success";
}
else
{
return Mail::failures();
}
}
Mail::failures()
返回["amirhasan.hesam@gmail.com"]
,没有任何特定错误!
这是我在mail.php上的配置:
return [
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', '*******'),
'port' => env('MAIL_PORT', 587),
'from' => ['address' => "****@*****", 'name' => "Diling"],
'encryption' => env('MAIL_ENCRYPTION', ''),
'username' => env('*****@*****'),
'password' => env('*************************'),
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,
];
我正在使用xamp来测试电子邮件。有什么想法吗?
答案 0 :(得分:0)
我在mail :: send ..中使用变量时遇到了麻烦。我也不确定mail :: send是否返回boolean等...我已经使用了类似于我写下的内容在过去。
$nameSend = Input::get('name');
Mail::send('Emails.email', $data, function($message) use ($nameSend){
$message->from('webmaster@example.com', $nameSend);
$message->to('amirhasan.hesam@gmail.com')->subject('Welcome to My Laravel app!');
});
。
if( count(Mail::failures()) > 0 ) {
$output = "There was one or more failures. They were: \n";
foreach(Mail::failures as $email_address) {
$output = $output. $email_address ."\n";
}
return $output;
}
return "Success!";
答案 1 :(得分:0)
您只需要使用Mail Facade
use Illuminate\Support\Facades\Mail;