ebittleman/mailgun-zf2

Mailgun 的 ZF2 包装器

1.0.4 2015-06-08 15:04 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:54:30 UTC


README

Build Status Build Status

这是一个非常新的库,对于任何事物都不提供任何保证。它基本上只是将 mailgun/mailgun-php 直接挂钩到 Zend Framework 2 中,祝您玩得开心。

安装

composer require ebittleman/mailgun-zf2

模块配置

此模块配置相当简单,只需知道您的 Mailgun API 密钥和域名即可。请注意:请不要将您的凭据以未加密的形式提交到公共仓库中!!!!

return array(
    'mailgun' => array(
        'apiKey' => 'YOUR_MAILGUN_APIKEY',
        'domain' => 'YOUR_MAILGUN_DOMAIN',
    ),
);

应用程序配置

您需要通过将其添加到应用程序配置中启用此模块

return array(
    'modules' => array(
        ...YOUR MODULES...,
        'MailgunZf2'
    ),
    'module_listener_options' => array(
        'config_glob_paths' => array(
            ...YOUR CONFIG PATHS...
        ),
        'module_paths' => array(
            ...YOUR MODULES PATHS...
        )
    )
);

超级基本用法

这里的基本思想是 MessageViewModel 实际上只是围绕 Mailgun\MessagesMessageBuilder 的一个视图适配器,并且它会在 ZF2 的 MvcEvent::EVENT_FINSH 事件中传递给控制器插件以准备发送消息。

namespace MailgunZf2\Controller;

use MailgunZf2\View\Model\MessageViewModel;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;

class IndexController extends AbstractActionController
{

    const HTMLTEMPLATE = 'emails/html.phtml';

    const TEXTTEMPLATE = 'emails/text.phtml';

    const FIRSTNAME = 'Chump';

    const SUBJECT = 'Welcome to spam town';

    public function indexAction()
    {
        $message = new MessageViewModel(
            static::HTMLTEMPLATE,
            static::TEXTTEMPLATE,
            array(
                'firstName' => 'Bob',
                'subject' => 'Howdy There Bob'
            )
        );
        
        $message->addToRecipient('someemail@example.com');
        $message->setFromAddress('fromsomeone@example.com');

        $this->mailgun($message);

        return new ViewModel();
    }
}