如何调用单个邮件功能,该功能将从我们想要传递的邮件,主题和数据的内容中获取?

时间:2018-03-13 06:33:11

标签: php laravel

我正在考虑在Laravel中创建一个单一的邮件功能,它将从名称,到文本,邮件内容,我们想要传递给邮件的数据和subject.i想要每次调用此函数我需要通过传递上述参数来发送邮件。我想动态地创建邮件的视图。我只想每次都需要发送邮件来调用该函数。我是如何通过使用帮助函数或通过创建一个控制台命令。请在Laravel中给出一些建议吗?

3 个答案:

答案 0 :(得分:1)

是的,如果您创建一个自定义类来发送项目中的电子邮件,并且该类的重用能力可以帮助您编写更少的代码,那么它可能会很小。

如果您想要更多的建议或课程实例,请告诉我。

答案 1 :(得分:1)

更多Laravel处理此方法的方式是laravel通知。

Laravel通知获得了对邮件通知的完美支持,您可以在其中进行邮件格式化,自定义收件人和模板。

链接到最新的文档欢呼:)

答案 2 :(得分:0)

use Illuminate\Support\Facades\Mail;
// 1- Define your variables
$params = [
    'from'      => 'from@example.com',
    'fromTitle' => 'Example',
    'subject'   => 'subject example',
    'to'        => 'test@gmail.com',
];

$content = [
    'title'   => 'Title',
    'content' => 'lorem ipsuim',
];

// 2- Create a function 
public function sendMail(array $params, array $content){
    Mail::send('mails.name_of_blade', $content, function ($message) use ($params) {
        $message->from($params['from'], $params['fromTitle']);
        $message->subject($params['subject']);
        $message->to($params['to']);
    });
    return true;
}

然后创建一个新的刀片文件并将其放在view文件夹下的mails文件夹中,并选择此文件的名称,在这种情况下,我使用name_of_blade