php twitter api,使用PHP通过twitter api获取twitter的推文信息

如果想用twitter api获取twitter的推文信息,首先你需要在https://apps.twitter.com

上面创建一个而应用,然后填写应用的相关信息如下图:

e01edf095e98b552fb0563de9f57b649.png

通过创建应用获取 Consumer Key ,Consumer Secret,Access Token,Access Token

14b8794a5b72a0718caff2d9f4d9b8fc.png

8543afc9deeb7c5047c9c7a804294222.png<?php

function buildBaseString($baseURI, $method, $params) {

$r = array();

ksort($params);

foreach($params as $key=>$value){

$r[] = "$key=" . rawurlencode($value);

}

return $method."&" . rawurlencode($baseURI) . '&' . rawurlencode(implode('&', $r));

}

function buildAuthorizationHeader($oauth) {

$r = 'Authorization: OAuth ';

$values = array();

foreach($oauth as $key=>$value)

$values[] = "$key=\"" . rawurlencode($value) . "\"";

$r .= implode(', ', $values);

return $r;

}

function returnTweet(){

$oauth_access_token         = "970871825709244417-77xNRiOhc9t1ugXcaLm1XdP0HSaYv4J";

$oauth_access_token_secret  = "D9MO2Xux4YciTh0z91nLfQoFS7bDZp7zoSMDH37cpBVHk";

$consumer_key               = "JPflgwtDYFghOO6zjXJqcPzeE";

$consumer_secret            = "0h2qs174patwTWC2hy6XfqsfnhlJvVBWZUnQja7FTGs4p5Y7BY";

$twitter_timeline           = "user_timeline";  //  mentions_timeline / user_timeline / home_timeline / retweets_of_me

//  create request

$request = array(

'screen_name'       => 'GbrilliantQ',

'count'             => '3'

);

$oauth = array(

'oauth_consumer_key'        => $consumer_key,

'oauth_nonce'               => time(),

'oauth_signature_method'    => 'HMAC-SHA1',

'oauth_token'               => $oauth_access_token,

'oauth_timestamp'           => time(),

'oauth_version'             => '1.0'

);

//  merge request and oauth to one array

$oauth = array_merge($oauth, $request);

//  do some magic

$base_info              = buildBaseString("https://api.twitter.com/1.1/statuses/$twitter_timeline.json", 'GET', $oauth);

$composite_key          = rawurlencode($consumer_secret) . '&' . rawurlencode($oauth_access_token_secret);

$oauth_signature            = base64_encode(hash_hmac('sha1', $base_info, $composite_key, true));

$oauth['oauth_signature']   = $oauth_signature;

//  make request

$header = array(buildAuthorizationHeader($oauth), 'Expect:');

$options = array( CURLOPT_HTTPHEADER => $header,

CURLOPT_HEADER => false,

CURLOPT_URL => "https://api.twitter.com/1.1/statuses/$twitter_timeline.json?". http_build_query($request),

CURLOPT_RETURNTRANSFER => true,

CURLOPT_SSL_VERIFYPEER => false);

$feed = curl_init();

curl_setopt_array($feed, $options);

$json = curl_exec($feed);

curl_close($feed);

return $json;

}

$tweet = returnTweet();

echo $tweet;

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值