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 相关文章推荐
PHPlet在Windows下的安装
Oct 09 PHP
PHP新手上路(八)
Oct 09 PHP
php笔记之:AOP的应用
Apr 24 PHP
深入for,while,foreach遍历时间比较的详解
Jun 08 PHP
PHP文件上传主要代码讲解
Sep 30 PHP
php函数指定默认值方法的小例子
Dec 04 PHP
PHP之APC缓存详细介绍 apc模块安装
Jan 13 PHP
php中文验证码实现方法
Jun 18 PHP
PHP简单实现生成txt文件到指定目录的方法
Apr 25 PHP
PHP页面输出搜索后跳转下一页的处理方法
Sep 30 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
Feb 15 PHP
PHP中关于php.ini参数优化详解
Feb 28 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解析url的三个示例
2014/01/20 PHP
php将字符串转化成date存入数据库的两种方式
2014/04/28 PHP
Destoon模板制作简明教程
2014/06/20 PHP
prototype 中文参数乱码解决方案
2009/11/09 Javascript
传智播客学习之java 反射
2009/11/22 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
防止jQuery ajax Load使用缓存的方法小结
2014/02/22 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
2014/10/21 Javascript
js插件YprogressBar实现漂亮的进度条效果
2015/04/20 Javascript
基于jquery实现人物头像跟随鼠标转动
2015/08/23 Javascript
D3.js实现文本的换行详解
2016/10/14 Javascript
jQuery仿写百度百科的目录树
2017/01/03 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
jQuery 动态粒子效果示例代码
2020/07/07 jQuery
javascript操作向表格中动态加载数据
2020/08/27 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
详解JavaScript原型与原型链
2020/11/16 Javascript
如何在vue中使用video.js播放m3u8格式的视频
2021/02/01 Vue.js
[02:56]DOTA2矮人直升机 英雄基础教程
2013/11/26 DOTA
给Python IDLE加上自动补全和历史功能
2014/11/30 Python
python获得linux下所有挂载点(mount points)的方法
2015/04/29 Python
python实现报表自动化详解
2017/11/16 Python
微信跳一跳python代码实现
2018/01/05 Python
详解TensorFlow查看ckpt中变量的几种方法
2018/06/19 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
2021/01/08 Python
css3中背景尺寸background-size详解
2014/09/02 HTML / CSS
CSS3的first-child选择器实战攻略
2016/04/28 HTML / CSS
意大利领先的线上奢侈品销售电商:Eleonora Bonucci
2017/10/17 全球购物
美国波西米亚风格服装品牌:Show Me Your Mumu
2018/01/05 全球购物
项目副经理岗位职责
2013/12/30 职场文书
中国梦演讲稿范文
2014/08/28 职场文书
委托公证书样本
2015/01/23 职场文书
民政局未婚证明
2015/06/15 职场文书
民事调解协议书
2016/03/21 职场文书
2019下半年英语教师的教学工作计划(3篇)
2019/09/25 职场文书