mlpz/postmark-bundle

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

postmark bundle

安装数: 29,428

依赖者: 1

建议者: 0

安全: 0

星标: 14

关注者: 3

分支: 12

开放问题: 1

类型:symfony-bundle

v0.0.6 2013-09-12 14:29 UTC

This package is not auto-updated.

Last update: 2020-01-24 15:00:10 UTC


README

Symfony2 为 Postmark API 提供的包 构建状态

设置

使用 Composer 在你的 composer.json 中添加 PostmarkBundle

{
    "require": {
        "mlpz/postmark-bundle": "*"
    }
}
$ php composer.phar update mlpz/postmark-bundle

使用子模块

git submodule add https://github.com/miguel250/PostmarkBundle.git vendor/bundles/MZ/PostmarkBundle
git submodule add https://github.com/kriswallsmith/Buzz.git  vendor/buzz

添加 MZ 命名空间到自动加载器 当使用 Composer 时可以跳过这一步

<?php
   // app/autoload.php
   $loader->registerNamespaces(array(
    // ...
    'MZ'               => __DIR__.'/../vendor/bundles',
    'Buzz'             => __DIR__.'/../vendor/buzz/lib',
  ));

将 PostmarkBundle 添加到你的应用程序内核

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new MZ\PostmarkBundle\MZPostmarkBundle(),
    );
}

在 config.yml 中启用 Postmark

mz_postmark:
    api_key: API KEY
    from_email: info@my-app.com
    from_name: My App, Inc
    use_ssl: true
    timeout: 5

使用方法

消息服务

<?php
$message  = $this->get('postmark.message');
$message->addTo('test@gmail.com', 'Test Test');
$message->setSubject('subject');
$message->setHTMLMessage('<b>email body</b>');
$message->addAttachment(new Symfony\Component\HttpFoundation\File\File(__FILE__));
$response = $message->send();

$message->addTo('test2@gmail.com', 'Test2 Test');
$message->setSubject('subject2');
$message->setHTMLMessage('<b>email body</b>');
$message->addAttachment(new Symfony\Component\HttpFoundation\File\File(__FILE__), 'usethisfilename.php', 'text/plain');
$response = $message->send();
?>

批量发送

<?php
$message  = $this->get('postmark.message');
$message->addTo('test@gmail.com', 'Test Test');
$message->setSubject('subject');
$message->setHTMLMessage('<b>email body</b>');
$message->queue(); // Queue the message instead of sending it directly

$message->addTo('test2@gmail.com', 'Test2 Test');
$message->setSubject('subject2');
$message->setHTMLMessage('<b>email body</b>');
$responses = $message->send(); // Send both messages, note that you'll get an array of json responses instead of just the json response
?>