用PHP推特的时间表?

时间:2010-06-12 23:33:21

标签: php twitter

我想做一些非常简单的事情,但似乎做这项简单任务的方式是不可能的。我需要拉开我的推特家庭时间表。不是我最近的推文,而是我关注的人的推文。我希望这可以用PHP完成,但我不知道。任何帮助表示赞赏,请和我谈谈,就像我是一个菜鸟一样 - 彻底大声笑。

2 个答案:

答案 0 :(得分:7)

看一下这个页面(链接更新): https://dev.twitter.com/docs/things-every-developer-should-know

另请查看有关使用OAuth的评论。

您必须使用curl in PHP

棘手的部分是curl options。您可以在下面的示例中看到我如何使用它们。

你想从apiwiki获得的部分是答案#8中的例子。具体做法是:

  

从您关注的用户那里获取更新,经过身份验证:curl -u用户名:密码http://api.twitter.com/1/statuses/friends_timeline.xml

Here's the friends timeline docs.您可以使用XML,JSON,RSS或Atom表单获取所需信息。从you can parse that simply with PHP.

开始,JSON可能是最简单的

好的,要将其转换为PHP,您可以使用:

<?php
// create a new cURL resource
$curl = curl_init();
// set URL and other appropriate options
$options = array(CURLOPT_URL => 'http://api.twitter.com/1/statuses/friends_timeline.json',
                 CURLOPT_HEADER => true,
                 CURLOPT_USERPWD => 'YOUR_USERNAME:YOUR_PASSWORD'
                );            

// set URL and other appropriate options
curl_setopt_array($curl, $options);
// grab URL and pass it to the browser
curl_exec($curl);
// close cURL resource, and free up system resources
curl_close($curl);
?>

刚刚在我的帐户上删除了它。上面的代码为您提供了JSON格式的朋友更新。

您可能不需要标题。如果不这样做,你可以省略“CURLOPT_HEADER =&gt; true”行。

编辑:

当然,一堆JSON只是非常有用....下面是一个如何更改上面代码以获取JSON并以人类可读形式打印某些选定项目的示例:

<?php
// create a new cURL resource
$curl = curl_init();
// set URL and other appropriate options
$options = array(CURLOPT_URL => 'http://api.twitter.com/1/statuses/friends_timeline.json',  
                 CURLOPT_USERPWD => 'USERNAME:PASSWORD',
                 CURLOPT_RETURNTRANSFER => true
                );            

// set URL and other appropriate options
curl_setopt_array($curl, $options);
// grab URL and pass it to the browser
$json = curl_exec($curl);
// close cURL resource, and free up system resources
curl_close($curl);
$obj = json_decode($json);    
foreach($obj as $var => $value)
{
    echo "Message number: $var <br/>";    
    echo "Name: " . $obj[$var]->user->name;
    echo "Handle: " . $obj[$var]->user->screen_name . "<br/>";        
    echo "Message: " . $obj[$var]->text;        
    echo "Created" . $obj[$var]->created_at . "<br/>";                    
    echo "URL" . $obj[$var]->user->url . "<br/>";
    echo "Location" . $obj[$var]->user->location . "<br/>";       
    echo "<br/>";
}
?>

答案 1 :(得分:0)

使用专门为Twitter设计的oAuth库,例如twitteroauth来访问它。

图书馆本身附带例子。您可能能够为此库调整一些Peter的代码。