我想知道发送邮件时的回调如何处理?我想在邮件发送时执行一些操作。我知道下面的代码是错误的,假设在发送邮件之前调用 $callbackOnSend ,在发送邮件之后调用 $callbackAfterSent 。
Mail::send(array('text' => 'view'), $data, $callbackOnSend, $callbackAfterSent);
我想知道如何实现 $callbackAfterSent?
最佳答案
如果邮件已发送,Mail::send() 方法将返回 true。
$mailVariables = ['from' => 'abc@abc.com'. 'fromName' => 'abc', 'to' => '123@123.com', 'cc' => 'xyz@xyz.com', 'attachment' => 'file1'];
Mail::send('emails.welcome', $data, function($message) use ($mailVariables)
{
$message->from($mailVariables['from'], $mailVariables['fromName']);
$message->to($mailVariables['to'])->cc($mailVariables['cc']);
$message->attach($mailVariables['attachment']);
});
如果您需要在邮件发送后/之后执行某些操作,您可以将整个 Mail::send() 包装在 if 语句中,但是,根据我的阅读,如果您有在配置中将 'pretent' 设置为 true,就像将 'pretend' 设置为 true 一样,mail::send() 将始终返回 false。
if(Mail::send('emails.welcome', $data, function($message) use ($mailVariables)
{
$message->from($mailVariables['from'], $mailVariables['fromName']);
$message->to($mailVariables['to'])->cc($mailVariables['cc']);
$message->attach($mailVariables['attachment']);
})) {
// do something
}
关于php - laravel 4 发送邮件时如何处理回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24821526/