Пост в twitter используя PHP и Twitter API

30 июня 2010 года в Twitter запретили механизм базовой аутентификации, все действия по работе с Twitter API (требующие аутентификации) нужно выполнять с помощью нового механизма OAuth. Работать с новым механизмом очень легко.
В этой статье я покажу, как с помощью PHP, используя Twitter API, можно послать сообщение в Twitter.
Предварительная настройка для использования Twitter API
Раньше при использовании механизма базовой аутентификации все, что было нужно для работы с Twitter — это логин и пароль. Новый механизм OAuth более сложен, но в то же время значительнее безопаснее — даже если ваши данные перехватят при обращении к Twitter API, ваш логин и пароль от Twitter останутся в тайне.
Для использования Twitter API необходимо зарегистрировать свое приложение:
- Зайдите на dev.twitter.com под своим логином и паролем, затем нажмите на ссылку «Register an app».
- Заполните форму — скорее всего введенные данные никто не проверяет со стороны Twitter, но лучше все заполнить по уму. Главное нужно выбрать в пункте «Default Access type» опцию «Read and Write». Нажмите кнопку «Register Application».
- Теперь вам нужно 4 ключа для работы вашего приложения. Перейдите по ссылке «View Your Applications», а потом нажмите на название вновь созданного приложения. Прокрутите страницу вниз и скопируйте «Consumer Key» и «Consumer Secret».
- Дальше нужно нажать в правом меню ссылку «My access token» и скопировать: «Access Token (oauth_token)» и «Access Token Secret (oauth_token_secret)».
Последнее, что нужно сделать: скачать библиотеку Abraham Twitter OAuth. В архиве библиотеки несколько файлов, но нам нужны только два: twitteroauth/twitteroauth.php и twitteroauth/OAuth.php.
Интеграция Twitter и PHP OAuth
Теперь напишем исходный код для опубликования сообщения в Twitter. Для этого достаточно нескольких строчек: нужно просто подключить библиотеку TwitterOAuth и использовать ключи для доступа к Twitter.
<?php require_once ('TwitterOAuth.php'); define("CONSUMER_KEY", "<Вставить Consumer Key>"); define("CONSUMER_SECRET", "<Вставить Consumer Secret>"); define("OAUTH_TOKEN", "<Вставить Access Token (oauth_token)>"); define("OAUTH_SECRET", "<Вставить Access Token Secret (oauth_token_secret)>"); // Устанавливаем соединение $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, OAUTH_TOKEN, OAUTH_SECRET); $content = $connection->get('account/verify_credentials'); // Создаем сообщение $connection->post('statuses/update', array('status' => 'Сообщение в Twitter автоматом из PHP :) .')); ?>
Список все действий Вы можете посмотреть здесь.