Alexander Cogneau
Alexander Cogneau

Reputation: 1274

mail() function doesn't work inside laravel 4

I was testing out my mail configuration. First I did a normal mail() call in a separate .php file. That worked fine. Then I copied the exact same code inside a route callback in Laravel 4 and now it doesn't work. How is that possible?

This is the code that works:

$from_add = "[email protected]"; 

$to_add = "[email protected]"; //<-- put your yahoo/gmail email address here

$subject = "Test Subject";
$message = "Test Message";

$headers = "From: $from_add \r\n";
$headers .= "Reply-To: $from_add \r\n";
$headers .= "Return-Path: $from_add\r\n";
$headers .= "X-Mailer: PHP \r\n";


mail($to_add,$subject,$message,$headers);

The adresses don't matter because I am testing with Test Mail Server Tool

Upvotes: 0

Views: 1074

Answers (2)

Dixit
Dixit

Reputation: 13056

Read Email Function in Laravel

Upvotes: 0

ciruvan
ciruvan

Reputation: 5213

When working with Laravel 4, it's always advisable to use the built-in Mail function.

This has a couple of advantages I wouldn't want to miss:

  • You can easily test mail features by setting the pretend option to true
  • It will allow you to send HTML mails using Blade views
  • You can choose which way your mails should be sent depending on your server config (sendmail, phpMailer)
  • You can queue mails so they will be sent later when there's less server load
  • You can do stuff after mail delivery in a callback function

If you still insist on using the php mail() function, set your driver in app/config/mail.php to "mail".

Upvotes: 1

Related Questions