Twitter has quickly become one of the most popular social networking sites online. It is currently ranked among the top twenty Web sites in the world and has over a million users. I have only recently hopped on the bandwagon and so far I have been able to connect with many interesting people and discover tons of great online resources. I added a Twitter feed into my footer once I got things going and I have been refining the code ever since. I finally have it at a point where I think all of the bugs are ironed out and it is ready to share.
The Twitter API is pretty easy to use and I decided to work with the Search API Method. I found that sometimes Twitter doesn’t respond due to high traffic on the site so instead of just using the API to return an Atom Feed, I decided to use is to return a Json file.
First, let’s setup our username and the number of Tweets we want to display.
1
2
3
4
|
$username = "your-user-name";
$num = 5;
$feed = "http://search.twitter.com/search.json?q=from:" . $username . "&rpp=" . $num;
|
Next we need to copy the Json file to our server, just in case the Search API doesn’t respond during our next attempt to grap our Tweets.
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
$newfile = dirname(__FILE__)."/twitternew.json";
$file = dirname(__FILE__)."/twitter.json";
copy($feed, $newfile);
$oldcontent = @file_get_contents($file);
$newcontent = @file_get_contents($newfile);
if($oldcontent != $newcontent) {
copy($newfile, $file);
}
$tweets = @file_get_contents($file);
$tweets = json_decode($tweets);
|
This will also check to see if any new Tweets have been added before it attempts to copy over the new Json file.
To finish it all off, we need to display our Tweets. This examples outputs them into an unordered list.
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
echo "<ul>";
for($x=0;$x<$limit;$x++) {
$str = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\">\\0</a>", $tweets->results[$x]->text);
$pattern = '/[#|@][^\s]*/';
preg_match_all($pattern, $str, $matches);
foreach($matches[0] as $keyword) {
$keyword = str_replace(")","",$keyword);
$link = str_replace("#","%23",$keyword);
$link = str_replace("@","",$keyword);
if(strstr($keyword,"@")) {
$search = "<a href=\"http://twitter.com/$link\">$keyword</a>";
} else {
$link = urlencode($link);
$search = "<a href=\"http://twitter.com/#search?q=$link\" class=\"grey\">$keyword</a>";
}
$str = str_replace($keyword, $search, $str);
}
echo "<li>".$str."</li>\n";
}
echo "</ul>";
|
Let’s put it all together and wrap it in a PHP tag.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
<?php
$username = "your-user-name";
$num = 5;
$feed = "http://search.twitter.com/search.json?q=from:" . $username . "&rpp=" . $num;
$newfile = dirname(__FILE__)."/twitternew.json";
$file = dirname(__FILE__)."/twitter.json";
copy($feed, $newfile);
$oldcontent = @file_get_contents($file);
$newcontent = @file_get_contents($newfile);
if($oldcontent != $newcontent) {
copy($newfile, $file);
}
$tweets = @file_get_contents($file);
$tweets = json_decode($tweets);
echo "<ul>";
for($x=0;$x<$limit;$x++) {
$str = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\">\\0</a>", $tweets->results[$x]->text);
$pattern = '/[#|@][^\s]*/';
preg_match_all($pattern, $str, $matches);
foreach($matches[0] as $keyword) {
$keyword = str_replace(")","",$keyword);
$link = str_replace("#","%23",$keyword);
$link = str_replace("@","",$keyword);
if(strstr($keyword,"@")) {
$search = "<a href=\"http://twitter.com/$link\">$keyword</a>";
} else {
$link = urlencode($link);
$search = "<a href=\"http://twitter.com/#search?q=$link\" class=\"grey\">$keyword</a>";
}
$str = str_replace($keyword, $search, $str);
}
echo "<li>".$str."</li>\n";
}
echo "</ul>";
?>
|
分享到:
相关推荐
How to Create a Database in Python using SQL Lite 3 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
this book tell you How to Create a Simple Web Dynpro Application for java,not for ABAP
启示录 第二版 Marty Cagan(压缩卷第一部分,共三部分)
Charts I- How to create a chart.xlt
How to Create a Healthy Plate - English.srt
This program shows you how to create a sample project that adds print preview capabilities to your Visual Basic program by using a generic object and the Printer object.
How to create a donut chart like this in chart.js
You will learn about the basic plots, how to customize them, and combine them to make sophisticated figures. Along with basic plots, you will also learn to make professional scientific plots.
Host Your Web Site On The Cloud is your step-by-step guide to this revolutionary approach to hosting and managing your web applications. Cloud computing gives you the tools you need to prepare and ...
Charts I- How to create a chart(2).xlt
这是一款关于How to Create an E-Commerce Web Site,日常工作生活中可用于学习、参考、借鉴,喜欢How t...该文档为How to Create an E-Commerce Web Site,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以...
优质资源,值得拥有
how to create my appidshow to create my appidshow to create my appids
启示录 第二版 Marty Cagan (压缩卷第二部分,共三部分) INSPIRED_ How to Create Tech Products Customers Love, 2nd Edition part2.rar
How to Create a Database in Python using SQL Lite 3 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
An example of how to create a coolbar such as the one in Internet Explorer without using a 3rd party control.
This book is a practical guide on how to create artwork for computer games - a burgeoning area in which thousands of artists are hired each year. The guide mostly focuses on fantasy art but the ...
How to Create a Database in Python using SQL Lite 3 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书