pmg twitterads

v1.0.2 2016-07-19 21:32 UTC

This package is auto-updated.

Last update: 2024-09-23 06:28:56 UTC


README

Coverage Status Build Status

TwitterAds-PHP

一个简单的PHP Twitter Ads SDK,由Guzzle驱动。

安装

you@yourcomputer:yourproject> composer require pmg/twitterads

初始化客户端

初始化客户端很简单。只需提供您的密钥即可!

$twitter = new \PMG\TwitterAds\TwitterAds(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, TOKEN_SECRET);
//We will assume for the rest of the examples that $twitter is defined.

请求

对于Twitter Ads API中的每个实体,都有一个可用的请求对象。我尽量保持端点与API文档中显示的完全一致,但也有一些需要注意的事项。

  • 路由参数在请求的API端点之后填充为一个数组(见以下示例)
  • 每个端点都分配了一个默认的HttpMethod,但可以在每个Request类型的构造函数中覆盖它
  • 请求的构造函数签名如下: __construct($url, $params=[], $headers=[], $method=null) 其中 $url 是API端点,$params 是正文/路由参数,$headers 是要发送请求的关联数组,而 $method 用于覆盖默认的 HttpMethod

请求的一个示例

use PMG\TwitterAds\TailoredAudiences\TailoredAudienceRequest;

$request = new TailoredAudienceRequest('accounts/:account_id/tailored_audiences', ['account_id' => ACCOUNT]);
$response = $twitter->send($request);

//Returns PMG\TwitterAds\Response

响应

所有请求,如果成功,都将返回一个PMG\TwitterAds\Response,这是一个简单的Guzzle响应的包装器。请求还实现了Arrayable,允许将请求转换为数组。

数组响应示例

object(PMG\TwitterAds\Response)#228 (3) {
  ["code":"PMG\TwitterAds\Response":private]=>
  int(200)
  ["headers":"PMG\TwitterAds\Response":private]=>
  array(8) {
    ["content-length"]=>
    string(4) "3749"
    ["content-type"]=>
    string(30) "application/json;charset=utf-8"
    ["date"]=>
    string(29) "Tue, 19 Jul 2016 14:55:21 GMT"
    ["expires"]=>
    string(29) "Tue, 31 Mar 1981 05:00:00 GMT"
    ["status"]=>
    string(6) "200 OK"
    ["x-rate-limit-limit"]=>
    string(2) "15"
    ["x-rate-limit-remaining"]=>
    string(2) "13"
    ["x-rate-limit-reset"]=>
    string(10) "1468940943"
  }
  ["body":"PMG\TwitterAds\Response":private]=>
  array(2) {
    ["id"]=>
    int(2222)
    ["id_str"]=>
    string(9) "2222"
  }
}

使用TON API

我提供了两种使用TON API的方法。

  • PMG\TwitterAds\Ton\TonRequest
  • PMG\TwitterAds\Ton\TonUpload

强烈建议使用后一种方法,因为TonUpload被设计来处理可能需要执行的任何批量上传,并将处理所有满足上传要求的请求。

TonRequest与SDK中的任何其他请求一样工作。

TonUpload的一个示例

$file = new \SplFileObject('somefile.txt');
$tonFile = new TonUpload($twitter, $file, 'text/plain');

$response = $tonFile->upload();

//Returns PMG\TwitterAds\Response