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文件
Jan 04 PHP
Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法
Jun 30 PHP
用php来改写404错误页让你的页面更友好
Jan 24 PHP
基于PHP开发中的安全防范知识详解
Jun 06 PHP
微信公众号开发之微信公共平台消息回复类实例
Nov 14 PHP
php导入excel文件到mysql数据库的方法
Jan 14 PHP
简介PHP的Yii框架中缓存的一些高级用法
Mar 29 PHP
PHP 返回13位时间戳的实现代码
May 13 PHP
PHP文件与目录操作示例
Dec 24 PHP
Django 中 cookie的使用
Aug 17 PHP
Codeigniter里的无刷新上传的实现代码
Apr 14 PHP
PHP数组访问常用方法解析
Sep 05 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中并发读写文件冲突的解决方案
2013/10/25 PHP
限制ckeditor上传图片文件大小的方法
2013/11/15 PHP
php数组索引与键值操作技巧实例分析
2015/06/24 PHP
深入了解javascript中的prototype与继承
2013/04/14 Javascript
javascript的propertyIsEnumerable()方法使用介绍
2014/04/09 Javascript
JavaScript设计模式之抽象工厂模式介绍
2014/12/28 Javascript
jQuery中attr()方法用法实例
2015/01/05 Javascript
浅谈javascript事件取消和阻止冒泡
2015/05/26 Javascript
jQuery xml字符串的解析、读取及查找方法
2016/03/01 Javascript
Bootstrap表单布局
2016/07/19 Javascript
JS本地刷新返回上一页代码
2016/07/25 Javascript
JavaScript面向对象编写购物车功能
2016/08/19 Javascript
vue addRoutes实现动态权限路由菜单的示例
2018/05/15 Javascript
axios使用拦截器统一处理所有的http请求的方法
2018/11/02 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
javascript json对象小技巧之键名作为变量用法分析
2019/11/11 Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
2020/04/27 Javascript
Python爬虫抓取手机APP的传输数据
2016/01/22 Python
说一说Python logging
2016/04/15 Python
深入理解python中的闭包和装饰器
2016/06/12 Python
python 显示数组全部元素的方法
2018/04/19 Python
用python处理图片之打开\显示\保存图像的方法
2018/05/04 Python
python生成九宫格图片
2018/11/19 Python
pytorch 修改预训练model实例
2020/01/18 Python
python实现猜拳游戏
2020/03/04 Python
Django实现文章详情页面跳转代码实例
2020/09/16 Python
CSS3教程(5):网页背景图片
2009/04/02 HTML / CSS
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
全球知名旅游社区法国站点:TripAdvisor法国
2016/08/03 全球购物
Boda Skins皮衣官网:奢侈皮夹克,全球配送
2016/12/15 全球购物
27个经典Linux面试题及答案,你知道几个?
2013/01/10 面试题
进修护士自我鉴定
2013/10/14 职场文书
房屋公证委托书
2014/04/03 职场文书
四风问题自查自纠工作情况报告
2014/10/28 职场文书
2015年父亲节寄语
2015/03/23 职场文书
特别篇动画《总之就是非常可爱 ~制服~》PV公开,2022年夏季播出
2022/04/04 日漫