codezero/mailer

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

使用Laravel 5在PHP中发送邮件。

2.0.0 2016-07-12 18:44 UTC

This package is auto-updated.

Last update: 2020-02-11 01:36:30 UTC


README

GitHub release License Build Status Scrutinizer Total Downloads

使用PHP发送邮件(使用Laravel 5实现)。

Laravel 5安装

通过Composer安装此包

composer require codezero/mailer

config/app.php中的providers数组中添加对MailerServiceProvider的引用

'providers' => [
    'CodeZero\Mailer\MailerServiceProvider'
]

用法

创建一个新的MailComposer类,该类继承自CodeZero\Mailer\MailComposer

<?php

namespace App;

use CodeZero\Mailer\MailComposer;

class WelcomeMailComposer extends MailComposer
{
    /**
     * Compose a welcome mail.
     *
     * @param string $email
     * @param string $firstname
     *
     * @return \CodeZero\Mailer\Mail
     */
    public function compose($email, $firstname)
    {
        $toEmail = $email;
        $toName = $firstname;
        $subject = 'Welcome!';
        $view = 'emails.welcome';
        $data = ['name' => $firstname];
        $options = null;

        return $this->getMail($toEmail, $toName, $subject, $view, $data, $options);
    }
}

您可以在compose()方法中接受任何您想要的参数(并且实际上可以将其命名为您喜欢的任何名称)。重要的一点是,您需要在基类上调用getMail()方法。这将返回一个CodeZero\Mailer\Mail对象,您可以使用它来send()消息。

// Make or inject your mail composer class
$mail = app()->make('App\WelcomeMailComposer');

// Compose and send
$mail->compose('example@example.com', 'Example Name')->send(); 

这将在幕后调用Laravel的Mail::queue()

测试

$ vendor/bin/phpspec run

安全

如果您发现任何安全相关的问题,请给我发电子邮件,而不是使用问题跟踪器。

许可

MIT许可(MIT)。请参阅许可文件以获取更多信息。

Analytics