mailerlite / mailerlite-api-v2-php-sdk
MailerLite API v2 PHP SDK
Requires
- php: ^7.1 || ^8.0
- ext-json: *
- nyholm/psr7: ^1.0
- php-http/client-common: ^2.0
- php-http/discovery: ^1.7
Requires (Dev)
- php-http/guzzle6-adapter: ^2.0
- phpunit/phpunit: 6.* | 7.* | 8.* | 9.*
README
此库适用于MailerLite Classic。如果您想与MailerLite集成,请使用https://github.com/mailerlite/mailerlite-php。
这是MailerLite Classic API的官方PHP SDK。
您可以在以下位置找到有关MailerLite Classic API的更多示例和信息:https://developers-classic.mailerlite.com/docs
入门
为了使用此库,您至少需要PHP 7.1版本。
使用MailerLite PHP SDK有两种方法
使用 Composer
如果您不熟悉Composer,可以在此了解它。
然后,您需要使用CLI运行以下简单命令
composer require mailerlite/mailerlite-api-v2-php-sdk
此库基于 PSR-7 和 PSR-18 构建。如果您遇到 Http\Discovery\Exception\DiscoveryFailedException
异常,您需要运行
composer require php-http/guzzle6-adapter
手动(适用于共享主机)
这种方法仅适用于您使用共享主机且无法使用Composer的情况。您需要从此处下载最新版本的源代码,解压并将其内容放置在项目的根目录中。下一步与使用Composer相同,您需要在index.php中引入vendor/autoload.php
文件,让我们开始吧!
使用示例
组API
在以下示例中,您将看到如何初始化选定的API和可用的几个操作
- 创建组
- 获取组
- 更新组
- 获取属于所选组的订阅者
$groupsApi = (new \MailerLiteApi\MailerLite('your-api-key'))->groups(); $newGroup = $groupsApi->create(['name' => 'New group']); // creates group and returns it $allGroups = $groupsApi->get(); // returns array of groups $groupId = 123; $singleGroup = $groupsApi->find($groupId); // returns single item object $subscribers = $groupsApi->getSubscribers($groupId); // get subscribers who belongs to selected group $subscribers = $groupsApi->getSubscribers($groupId, 'unsubscribed'); // get unsubscribed subscribers who belongs to selected group
同时使用多个API
还可以在选中要使用的API之前初始化`MailerLiteApi\MailerLite`对象,这允许您实现更多功能。
$mailerliteClient = new \MailerLiteApi\MailerLite('your-api-key'); $groupsApi = $mailerliteClient->groups(); $groups = $groupsApi->get(); // returns array of groups $fieldsApi = $mailerliteClient->fields(); $fields = $fieldsApi->get(); // returns array of fields
使用您首选的HTTP客户端
MailerLite SDK使用cURL作为默认HTTP客户端,但很容易使用您首选的客户端。这是通过使用符合PSR-7的HTTP客户端抽象HTTPlug来实现的。
以下是如何使用Guzzle而不是cURL的示例
$guzzle = new \GuzzleHttp\Client(); $guzzleClient = new \Http\Adapter\Guzzle6\Client($guzzle); $mailerliteClient = new \MailerLiteApi\MailerLite('your-api-key', $guzzleClient);
支持和反馈
如果您发现任何错误,请直接在此GitHub上提交问题。
欢迎您为任何其他编程语言创建SDK。
如果您在使用我们的API或SDK时遇到任何问题,请通过电子邮件info@mailerlite.com联系我们。