mabasic/mailer

此包已被废弃,不再维护。未建议替代包。

Laravel 4 包,用于更高效地发送电子邮件,灵感来自Laracasts。

2.0.0 2015-06-06 20:56 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:36:33 UTC


README

Laravel 4 包,用于更高效地发送电子邮件,灵感来自Laracasts课程

它具体做什么?

它允许您从控制器中编写如下代码

$this->contactMailer->send($data);

而不是每次发送电子邮件时都这样做

Mail::queue($view, $data, function($message) use($email, $subject)
{
    $message->to($email)->subject($subject);
});

安装

从项目根目录执行

composer require mabasic/mailer

使用方法

创建一个用于特定情况的类,如下所示

<?php namespace Acme\Mailers;

use Mabasic\Mailer\Mailer;

class ContactMailer extends Mailer {

    public function send($data)
    {
        $view = 'emails.contact';
        $subject = 'Test';
        $email = 'test@test.com';

        $this->sendTo($email, $subject, $view, $data);
    }

}

然后在您的控制器中,您可以注入它并像这样使用它

<?php

use Acme\Mailers\ContactMailer;

class MailerController extends \BaseController {

    protected $contactMailer;

    function __construct(ContactMailer $contactMailer)
    {
        $this->contactMailer = $contactMailer;
    }

    public function sendMail()
    {
        // Get some data for the email, like user name, message, etc ...

        $data = [
            'name' => 'John Doe',
            'comment' => 'Hello, nice to meet you.'
        ];

        $this->contactMailer->send($data);

        return 'ok';
    }

}