Laravel 4电子邮件无法正常工作

时间:2013-05-16 11:30:29

标签: laravel laravel-4 swiftmailer

我一直在寻找两天的答案,但仍然没有。我已经按照几个教程,只需要几个配置设置,但我的Laravel 4应用程序仍然不想发送电子邮件。它总是抛出相同的异常,没有人似乎有答案。似乎我已经尝试了除了工作之外的一切。

Route::get('/sendemail', function() {
    $data['user'] = 'Test User';
    Mail::send('email.test', $data, function($m) {
          $m->to('myemail@example.com')->subject('Email test');
    });
});

但是当我在指定的路线中时,它总是会抛出同样的错误:

  

参数1传递给Swift_Transport_EsmtpTransport :: __ construct()   必须实现接口Swift_Transport_IoBuffer,没有给出

配置正常,甚至在config/mail.php中将驱动程序从'smtp'更改为'mail'也会引发异常。

  

传递给Swift_Transport_MailTransport :: __ construct()的参数1必须是Swift_Transport_MailInvoker的一个实例,没有给出

我被困在这里,我不知道该怎么做。我的作曲家是最新的,PHP版本是5.4.4。

非常感谢任何建议。

谢谢。

1 个答案:

答案 0 :(得分:0)

你现在可能已经找到了答案。 但我认为你需要第二个论点来讨论

尝试:

$data = array('user' => $user);
Mail::send('email.test', $data, function($message) use ($user)
{
  $message->to($user->email, $user->name)->subject('Email Test');
});