| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- <?php
- /**
- * @author Albert Kozlowski <vojant@gmail.com>
- * @license MIT License
- * @link https://github.com/vojant/Twitter-php
- */
- namespace TwitterPhp;
- use \TwitterPhp\Connection\Application;
- use \TwitterPhp\Connection\User;
- require_once 'connection/ConnectionAbstract.php';
- require_once 'connection/Application.php';
- require_once 'connection/User.php';
- /**
- * Class TwitterRestApiException
- */
- class RestApiException extends \Exception {};
- /**
- * Class RestApi
- * @package TwitterPhp
- */
- class RestApi
- {
- /**
- * @var string
- */
- private $_consumerKey;
- /**
- * @var string
- */
- private $_consumerSecret;
- /**
- * @var string
- */
- private $_accessToken;
- /**
- * @var string
- */
- private $_accessTokenSecret;
- /**
- * @param string $consumerKey
- * @param string $consumerSecret
- * @param null|string $accessToken
- * @param null|string $accessTokenSecret
- * @throws TwitterRestApiException
- */
- public function __construct($consumerKey,$consumerSecret,$accessToken = null,$accessTokenSecret = null)
- {
- if (!function_exists('curl_init')) {
- throw new TwitterRestApiException('You must have the cURL extension enabled to use this library');
- }
- $this->_consumerKey = $consumerKey;
- $this->_consumerSecret = $consumerSecret;
- $this->_accessToken = $accessToken;
- $this->_accessTokenSecret = $accessTokenSecret;
- }
- /**
- * Connect to Twitter API as application.
- * @link https://dev.twitter.com/docs/auth/application-only-auth
- *
- * @return \TwitterPhp\Connection\Application
- */
- public function connectAsApplication()
- {
- return new Application($this->_consumerKey,$this->_consumerSecret);
- }
- /**
- * Connect to Twitter API as user.
- * @link https://dev.twitter.com/docs/auth/oauth/single-user-with-examples
- *
- * @return \TwitterPhp\Connection\User
- * @throws TwitterRestApiException
- */
- public function connectAsUser()
- {
- if (!$this->_accessToken || !$this->_accessTokenSecret) {
- throw new TwitterRestApiException('Missing ACCESS_TOKEN OR ACCESS_TOKEN_SECRET');
- }
- return new User($this->_consumerKey,$this->_consumerSecret,$this->_accessToken,$this->_accessTokenSecret);
- }
- }
|