1. Понадобится скачать класс «twitter-api-php» для работы с API Тветтера – https://github.com/J7mbo/twitter-api-php
2. Регистрируемся в твиттере если еще нет аккаунта.
3. Для отправки твитов через API нужно четыре ключа:
access_token
,access_token_secret
,consumer_key
,consumer_secret
.
Чтобы их получить нужно создать приложение.
3.1. Создаем приложение на странице https://apps.twitter.com/app/new
3.2. Переходим на вкладку «Keys and Access Tokens», там указаны consumer_key
, consumer_secret
.
3.3. Жмем «Create my access token», появятся access_token
, access_token_secret
.
PHP скрипт
<?php
// Подключаем класс.
require_once __DIR__ . '/twitter-api-php/TwitterAPIExchange.php';
$tw = new TwitterAPIExchange(array(
'oauth_access_token' => "xxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
'oauth_access_token_secret' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
'consumer_key' => "xxxxxxxxxxxxxxxxxxxxxxxxx",
'consumer_secret' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
));
// Отправляем изображение в Twitter и получаем его ID.
$param = array(
'media_data' => base64_encode(file_get_contents(__DIR__ . '/image.jpg'))
);
$res = $tw
->buildOauth('https://upload.twitter.com/1.1/media/upload.json', 'POST')
->setPostfields($param)
->performRequest();
$img = json_decode($res);
// Отправляем твит.
$param = array(
'status' => 'Hello, world!',
'media_ids' => $img->media_id_string
);
$res = $tw
->buildOauth('https://api.twitter.com/1.1/statuses/update.json', 'POST')
->setPostfields($param)
->performRequest();
Ограничения:
- 150 запросов к API в час.
- Сообщение ограничено 140 символами. К сообщению можно дописать URL, в этот лимит он не войдет.