是否可以在刀片模板内定义邮件主题?

时间:2016-11-23 15:14:33

标签: php laravel email

使用Mail::queue / Mail::send发送邮件时,您必须单独传递邮件模板和主题。

有没有办法在邮件模板中管理主题(更适合多语言)。

即。作为模板中的第一行

mail.blade.php

This is the subject
Hello User,
foobar

1 个答案:

答案 0 :(得分:0)

这并不难:

    Mail::queue($template, $data, function (Message $message) use ($toUser, $sendingName, $sendingAddress) {
        // take subject from first line of the template
        $body = $message->getSwiftMessage()->getBody();
        $bodyLines = explode("\n", $body);
        if (count($bodyLines) == 0) {
            Log::warning('Empty mail');
            return;
        }
        $subject = $bodyLines[0];
        unset($bodyLines[0]);

        // send
        $message->getSwiftMessage()->setBody(implode("\n", $bodyLines));

        ....