PHP调用Twitter的RSS的实现代码
PHP调用Twitter的RSS的实现代码
发布时间:2016-12-29 来源:查字典编辑
摘要:这个栏目最开始调用微博饭否的API来做的,因为众所周知的缘故,饭否无法使用了,后来采用腾讯的滔滔API来实现.2010年1月26日滔滔业务将...

PHP调用Twitter的RSS的实现代码1

这个栏目最开始调用微博饭否的API来做的,因为众所周知的缘故,饭否无法使用了,后来采用腾讯的滔滔API来实现.2010年1月26日滔滔业务将会开始和QQ空间心情整合,只能考虑放弃。思来想去,最终还是考虑用Twitter来实现,不过Twitter在国内无法访问,不能采用js的方式来调用。本博客的服务器才国外,用php的方式访问Twitter的API应该没有问题,虽然有现成的wordpress插件“Twitter Tools”可以用,但本着尽量少用插件的目的,决定直接用php在wordpress主题里实现。twritter提供的API接口很丰富,研究一下觉得调用Twitter RSS的API比较简单,实现如下功能:

1、抓取twitter RSS的内容,不需要密码,只需要用户名。

2、格式化RSS的内容,显示用户本人的推的内容及时间,排除 @replies 回复给他人的信息内容。

代码如下:

复制代码 代码如下:

<>

<?php

$username='xjb';//change this to your twitter username修改为你的twitter 用户名

$feedURL='http://twitter.com/statuses/user_timeline/'.$username.'.rss';

$excludePattern='/'.$username.': @/'; //excludes any @replies排除@replies 内容

$count=5;// show count

$i=0;

if(!$xml=simplexml_load_file($feedURL)){

trigger_error('Error',E_USER_ERROR);

}

foreach($xml->channel->item as $item) {

if ( ! preg_match("$excludePattern", $item->title)) {

$filteredTitle=htmlspecialchars("$item->title");

$filteredTitle=str_replace("$username: ","",$filteredTitle);

//Convert the time zone in China --转成中国时区

date_default_timezone_set('Asia/Shanghai');

$i++;

if($i>$count)

{

break;

}

?>

<li><?php echo $filteredTitle; ?>

(<?php echo date("Y-m-d H:i:s",strtotime($item->pubDate)); ?>)</li>

<?php } } ?>

<div align="right">

<a href="http://twitter.com/xjb" target="_blank">更多...</a></div>

<>

源代码

复制代码 代码如下:

<>

<?php

$username='xjb'; //change this to your twitter username --修改为你的twitter 用户名

$feedURL='http://twitter.com/statuses/user_timeline/'.$username.'.rss';

$excludePattern='/'.$username.': @/'; //excludes any @replies --排除 @replies 内容

$count=5;// show count

$i=0;

if(!$xml=simplexml_load_file($feedURL)){

trigger_error('Error',E_USER_ERROR);

}

foreach($xml->channel->item as $item) {

if ( ! preg_match("$excludePattern", $item->title)) {

$filteredTitle=htmlspecialchars("$item->title");

$filteredTitle=str_replace("$username: ","",$filteredTitle);

date_default_timezone_set('Asia/Shanghai'); //Convert the time zone in China --转成中国时区

$i++;

if($i>$count)

{

break;

}

?>

<li><?php echo $filteredTitle; ?>(<?php echo date("Y-m-d H:i:s",strtotime($item->pubDate)); ?>)</li>

<?php } } ?>

<div align="right"><a href="http://twitter.com/xjb" target="_blank">更多...</a></div>

<>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类