mailmatics/php-sdk

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

Mailmatics PHP SDK

v0.0.1 2016-09-13 13:47 UTC

This package is auto-updated.

Last update: 2022-02-01 12:56:56 UTC


README

Mailmatics API 的 PHP 客户端。

此库处于开发中。使用风险自担。

要求

安装

推荐通过 Composer 安装 PHP Mailmatics SDK。

$ curl -sS https://getcomposer.org/installer | php

然后,运行 Composer 命令安装最新稳定版

$ php composer.phar require mailmatics/php-sdk

安装后,您需要引入 Composer 的自动加载器

require 'vendor/autoload.php';

认证

PHP Mailmatics SDK 支持两种认证模式

1. API 密钥

use Mailmatics\Client;

$client = new Client(['apiKey' => '...']);

2. 简单登录

use Mailmatics\Client;

$client = new Client(['username' => 'admin', 'password' => '12345']);

选项

待办事项

HTTP 客户端

内部,PHP Mailmatics SDK 使用 Mailmatics\HttpClientInterface 的实现。默认是 Mailmatics\HttpClient\StreamClient。您可以通过传递给客户端构造函数来更改它

use Mailmatics\Client;
use Mailmatics\HttpClient\CurlClient;

$client = new Client($credentials, $options, new CurlClient());

更强大的实现是 Mailmatics\HttpClient\GuzzleHttpClient,它需要 Guzzle 库。

use Mailmatics\HttpClient\GuzzleHttpClient;

$httpClient = new GuzzleHttpClient();

您可以在构造函数中传递您的 Guzzle 客户端实例

use GuzzleHttp\Client as GuzzleClient;
use Mailmatics\HttpClient\GuzzleHttpClient;

$guzzleClient = new GuzzleClient();
$httpClient = new GuzzleHttpClient($guzzleClient);

列表

获取所有列表

$lists = $client->getLists()->all();

获取单个列表

$list = $client->getLists()->get(123);

将用户订阅到列表

$list = $client->getLists()->addSubscriber($listId, $email);

您还可以指定姓名和姓氏

$data = [
	'firstname' => 'John',
	'lastname' => 'Smith',
];

$list = $client->getLists()->addSubscriber(123, $email, $data);

...或全名(Mailmatics 自动拆分姓名和姓氏)

$data = [
	'fullname' => 'John Smith',
];

$list = $client->getLists()->addSubscriber(123, $email, $data);

取消用户订阅

要取消用户订阅,您必须拥有他的订阅者 ID。

$list = $client->getLists()->unsubscribe($listId, $subscriberId);

待办事项:如何获取订阅者 ID?

事务性电子邮件

获取所有事务性电子邮件

$emails = $client->getTransactional()->all();

获取单个事务性电子邮件

$email = $client->getTransactional()->get(123);

发送事务性电子邮件

$data = [
	'firstName' => 'John',
	'lastName' => 'Smith'
];

$email = $client->getTransactional()->send(123, 'john@example.com', $data);

发送计划的事务性电子邮件

$data = [
	'firstName' => 'John',
	'lastName' => 'Smith'
];

$schedule = new DateTime('2018-12-25 12:30:00');

$email = $client->getTransactional()->send(123, 'john@example.com', $data, $schedule);

许可证

此库受 MIT 许可证的许可 - 有关详细信息,请参阅 LICENSE 文件。