php - laravel 4 发送邮件时如何处理回调

标签 php laravel laravel-4

我想知道发送邮件时的回调如何处理?我想在邮件发送时执行一些操作。我知道下面的代码是错误的,假设在发送邮件之前调用 $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/

相关文章:

php - Laravel PDO 异常

mysql - 优化 多数据库更新

mysql - Eloquent 查询构建复杂查询以获取在同一表的 2 个不同列中搜索 ID 的唯一记录

php - Laravel 4 查询生成器 : LEFT JOIN . .. AND ... 查询

php - MPDF,将包含几页的 PDF 与当前页面合并

php - 如何解析 PHP 中特定分隔部分的字符串?

php - 如何从 pinterest 获取所有图钉?仅获得 50 个引脚

php - 在 php 登录 session 中获取用户名

jquery - 如何使用 Ajax 加载过滤后的数据,而不需要在 laravel 中重新加载整个页面

php - Laravel 4 2个表之间的连接