PHP调用Twitter的RSS的实现代码


Posted in PHP onMarch 10, 2010

PHP调用Twitter的RSS的实现代码
这个栏目最开始调用微博饭否的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 回复给他人的信息内容。

代码如下:

<!-- my tritter --> 
<?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> 
<!-- my tritter -->

源代码
<!-- my tritter --> 
<?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> 
<!-- my tritter -->
PHP 相关文章推荐
php变量范围介绍
Oct 15 PHP
apache php模块整合操作指南
Nov 16 PHP
php 批量添加多行文本框textarea一行一个
Jun 03 PHP
ThinkPHP查询中的魔术方法简述
Jun 25 PHP
php中strtotime函数用法详解
Nov 15 PHP
php获取文件名后缀常用方法小结
Feb 24 PHP
PHP 与 UTF-8 的最佳实践详细介绍
Jan 04 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
ThinkPHP中create()方法自动验证表单信息
Apr 28 PHP
laravel框架之数据库查出来的对象实现转化为数组
Oct 23 PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 PHP
Yii 框架使用数据库(databases)的方法示例
May 19 PHP
PHP中include()与require()的区别说明
Mar 10 #PHP
PHP扩展编写点滴 技巧收集
Mar 09 #PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 #PHP
PHP 最大运行时间 max_execution_time修改方法
Mar 08 #PHP
php ss7.5的数据调用 (笔记)
Mar 08 #PHP
phpmyadmin 常用选项设置详解版
Mar 07 #PHP
PHPMYADMIN 简明安装教程 推荐
Mar 07 #PHP
You might like
PHP 中dirname(_file_)讲解
2007/03/18 PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
2015/12/25 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
PHP项目多语言配置平台实现过程解析
2020/05/18 PHP
JS实现时间格式化的方式汇总
2013/10/16 Javascript
js取消单选按钮选中并判断对象是否为空
2013/11/14 Javascript
JQuery获取或设置ckeditor的数据(示例代码)
2013/11/15 Javascript
JavaScript将一个数组插入到另一个数组的方法
2015/03/19 Javascript
JavaScript模拟实现键盘打字效果
2015/06/29 Javascript
JavaScript基础教程——入门必看篇
2016/05/20 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
原生js实现验证码功能
2017/03/16 Javascript
javascript实现Java中的Map对象功能的实例详解
2017/08/21 Javascript
Node做中转服务器转发接口
2017/10/18 Javascript
JQuery搜索框自动补全(模糊匹配)功能实现示例
2019/01/08 jQuery
微信小程序中为什么使用var that=this
2019/08/27 Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
2020/04/27 Javascript
vue中使用vue-pdf的方法详解
2020/09/05 Javascript
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
Python的“二维”字典 (two-dimension dictionary)定义与实现方法
2016/04/27 Python
简单谈谈Python中的几种常见的数据类型
2017/02/10 Python
Python把csv数据写入list和字典类型的变量脚本方法
2018/06/15 Python
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
2018/12/13 Python
浅谈python 导入模块和解决文件句柄找不到问题
2018/12/15 Python
Python 没有main函数的原因
2020/07/10 Python
selenium+超级鹰实现模拟登录12306
2021/01/24 Python
通用的Django注册功能模块实现方法
2021/02/05 Python
如何删除一个表里面的重复行
2013/07/13 面试题
简单而又朴实的个人求职信分享
2013/12/12 职场文书
晚宴邀请函范文
2014/01/15 职场文书
企业总经理职责
2014/02/02 职场文书
股东合作协议书范本
2014/04/14 职场文书
大四学生个人总结
2015/02/15 职场文书
民政工作个人总结
2015/02/28 职场文书
房贷收入证明范本
2015/06/12 职场文书