pmg /twitterads
Twitter Ads SDK
v1.0.2
2016-07-19 21:32 UTC
Requires
- guzzlehttp/guzzle: ^6.2
- guzzlehttp/oauth-subscriber: ^0.3
Requires (Dev)
- phpunit/phpunit: ^5.4
- satooshi/php-coveralls: ^1.0
- vlucas/phpdotenv: ^2.3
This package is auto-updated.
Last update: 2024-09-23 06:28:56 UTC
README
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