O C*_*nor 4 php email xampp smtp laravel
开始使用Laravel 4.2我尝试使用Gmail STMP服务器发送电子邮件.下面是我的app/config/mail.php.
return array(
'driver' => 'smtp',
'host' => 'smtp.gmail.com',
'port' => 465,
'from' => array('address' => 'sample_address@gmail.com', 'name' => 'Sample'),
'encryption' => 'tls',
'username' => 'sample_address@gmail.com',
'password' => 'sample password',
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,
);
Run Code Online (Sandbox Code Playgroud)
下面是我的PHP代码.
<!-- app/views/emails/welcome.php -->
Mail::send('emails.welcome', 'Laravel Admin', function($msg) {
$msg->from('sample_address@gmail.com', 'Laravel Admin');
$msg->to('sample_receiver@gmail.com');
});
Run Code Online (Sandbox Code Playgroud)
但它不起作用.我已经在我的MAC OSX上配置了我的XAMPP php.ini.它仅在发送普通PHP邮件时有效,而不是SMTP.我在视图页面上从Laravel获得的错误消息是" 异常处理程序错误 ".我想看到更多的错误信息,但我不知道如何获得更多信息.我的代码出了什么问题?我还需要做什么或配置什么?谢谢!
您可以将您的电子邮件和姓名放在输入中
Input::merge(array('email'=>'sample_receiver@gmail.com','name'=>'sample_name'));
Mail::send('emails.welcome', 'Laravel Admin', function($msg) {
$msg->from('sample_address@gmail.com', 'Laravel Admin');
$msg->to(Input::get('email'), Input::get('name'))->subject('You have');
});
Run Code Online (Sandbox Code Playgroud)
也改变'加密'
return array(
'driver' => 'smtp',
'host' => 'smtp.gmail.com',
'port' => 465,
'from' => array('address' => 'sample_address@gmail.com', 'name' => 'Sample'),
'encryption' => 'ssl',
'username' => 'sample_address@gmail.com',
'password' => 'sample password',
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,
);
Run Code Online (Sandbox Code Playgroud)