Simple PHP Wrapper for Twitter API v1.1 calls
PHP
Latest commit 5a1ac48 Jul 21, 2016 @J7mbo committed on GitHub Merge pull request #184 from J7mbo/develop
Develop -> Master

README.md

twitter-api-php

Simple PHP Wrapper for Twitter API v1.1 calls

Total Downloads Build Status Version

Changelog || Examples || Wiki

Instructions in StackOverflow post here with examples. This post shows you how to get your tokens and more. If you found it useful, please upvote / leave a comment! :)

The aim of this class is simple. You need to:

You really can't get much simpler than that. The above bullet points are an example of how to use the class for a POST request to block a user, and at the bottom is an example of a GET request.

Installation

Normally: If you don't use composer, don't worry - just include TwitterAPIExchange.php in your application.

Via Composer: If you realise it's 2015 now and you do use composer, here's what you add to your composer.json file to have TwitterAPIExchange.php automatically imported into your vendors folder:

{
    "require": {
        "j7mbo/twitter-api-php": "dev-master"
    }
}

Of course, you'll then need to run php composer.phar update.

How To Use

Include the class file

require_once('TwitterAPIExchange.php');

Set access tokens

$settings = array(
    'oauth_access_token' => "YOUR_OAUTH_ACCESS_TOKEN",
    'oauth_access_token_secret' => "YOUR_OAUTH_ACCESS_TOKEN_SECRET",
    'consumer_key' => "YOUR_CONSUMER_KEY",
    'consumer_secret' => "YOUR_CONSUMER_SECRET"
);

Choose URL and Request Method

$url = 'https://api.twitter.com/1.1/blocks/create.json';
$requestMethod = 'POST';

Choose POST fields

$postfields = array(
    'screen_name' => 'usernameToBlock', 
    'skip_status' => '1'
);

Perform the request!

$twitter = new TwitterAPIExchange($settings);
echo $twitter->buildOauth($url, $requestMethod)
    ->setPostfields($postfields)
    ->performRequest();

GET Request Example

Set the GET field BEFORE calling buildOauth(); and everything else is the same:

$url = 'https://api.twitter.com/1.1/followers/ids.json';
$getfield = '?screen_name=J7mbo';
$requestMethod = 'GET';

$twitter = new TwitterAPIExchange($settings);
echo $twitter->setGetfield($getfield)
    ->buildOauth($url, $requestMethod)
    ->performRequest();

That is it! Really simple, works great with the 1.1 API. Thanks to @lackovic10 and @rivers on SO!