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 相关文章推荐
PHP5在Apache下的两种模式的安装
Sep 05 PHP
ob_start(),ob_start('ob_gzhandler')使用
Dec 25 PHP
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
PHP parse_url 一个好用的函数
Oct 03 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
php递归删除指定文件夹的方法小结
Apr 20 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
Jun 28 PHP
PHP序列化/对象注入漏洞分析
Apr 18 PHP
PHP编程实现微信企业向用户付款的方法示例
Jul 26 PHP
PHP7基于curl实现的上传图片功能
May 11 PHP
PHP实现断点续传乱序合并文件的方法
Sep 06 PHP
PHP实现的简单留言板功能示例【基于thinkPHP框架】
Dec 07 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中文汉字验证码
2007/04/08 PHP
PHP中4个加速、缓存扩展的区别和选用建议
2014/03/12 PHP
微信支付开发教程(一)微信支付URL配置
2014/05/28 PHP
php中常见的sql攻击正则表达式汇总
2014/11/06 PHP
PHP调用Linux命令权限不足问题解决方法
2015/02/07 PHP
php实现文件上传及头像预览功能
2017/01/15 PHP
基于php流程控制语句和循环控制语句(讲解)
2017/10/23 PHP
PHP分页显示的方法分析【附PHP通用分页类】
2018/05/10 PHP
Javascript 阻止javascript事件冒泡,获取控件ID值
2009/06/27 Javascript
JQuery 学习笔记 选择器之一
2009/07/23 Javascript
javascript 操作select下拉列表框的一点小经验
2010/03/20 Javascript
一个JS的日期格式化算法示例
2013/07/31 Javascript
js单词形式的运算符
2014/05/06 Javascript
angular.element方法汇总
2015/01/07 Javascript
JavaScript数组迭代器实例分析
2015/06/09 Javascript
AngularJs bootstrap搭载前台框架——准备工作
2016/09/01 Javascript
Vuejs第七篇之Vuejs过渡动画案例全面解析
2016/09/05 Javascript
Node.js与MySQL交互操作及其注意事项
2016/10/05 Javascript
jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法
2017/07/12 jQuery
使用Node.js实现RESTful API的示例
2017/08/01 Javascript
AngularJS 控制器 controller的详解
2017/10/17 Javascript
vue todo-list组件发布到npm上的方法
2018/04/04 Javascript
如何基于js判断浏览器版本
2020/02/20 Javascript
vue脚手架项目创建步骤详解
2021/03/02 Vue.js
[01:36:19]Secret vs NB 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
详解python实现线程安全的单例模式
2018/03/05 Python
对Python实现累加函数的方法详解
2019/01/23 Python
Python lambda表达式filter、map、reduce函数用法解析
2019/09/11 Python
virtualenv介绍及简明教程
2020/06/23 Python
澳洲最大的时尚奢侈品电商平台:Cettire
2020/06/15 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
致跳高运动员广播稿
2014/01/13 职场文书
酒店餐厅2014重阳节活动策划方案
2014/09/16 职场文书
2015年党员公开承诺书范文
2015/01/22 职场文书
2015年评职称工作总结范文
2015/04/20 职场文书
创业计划书之书店
2019/09/10 职场文书