<?php 
/* 
    ~~~~~~ latest tweet ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    ~~~~~~ Adam S, firsttube.com, twitter @sethadam1 
    ~~~~~~ version 0.3, 2009-03-24 
    ~~~~~~ this script will fetch your latest tweet and display it 
    ~~~~~~ on your website.  It will also cache the results for performance. 
*/

$tw_File '/path/to/a/static/writable/cache/file.html';
$tw_userid 'XXXXXXX'//find at http://help.twitter.com/forums/23786/entries/15360
# if($_SERVER['QUERY_STRING']=='twitter-reset') { $offset=0; } else { $offset = '600'; } //every 10 minutes, 43200 = 12 hours
if(filemtime($tw_File)>time()-$offset) { 
    include 
$tw_File;
} else { 
    if(
is_writable($tw_File)) { $fiw=1; }  
    
$hyperlinks true;
    
$c curl_init();
    
curl_setopt($cCURLOPT_URL"http://twitter.com/statuses/user_timeline/".$tw_userid.".xml");
    
curl_setopt($cCURLOPT_RETURNTRANSFER1);
    
$src curl_exec($c);
    
curl_close($c);
    
preg_match('/<created_at>(.*)<\/created_at>/'$src$d);
    if(
strtotime($d[1]) > time()-604800) { 
        
preg_match('/<text>(.*)<\/text>/'$src$m);
        
$tweet str_replace('&amp;quot;','&quot;',str_replace('&#8217;',"'",str_replace("&amp;","&",$m[1])));
        
$tweet ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]""<a href=\"\\0\">\\0</a>"$tweet);
        
$tweet preg_replace("/([ ])(www.)([^ ]+)(\.)(net|com|org)/"" <a href=\"http://www.\\3.\\5\">www.\\3.\\5</a>"$tweet);        
        
$tweet preg_replace("/(\s@|^@|^RT@)([^ ]+)/"," <a href=\"http://twitter.com/$2\">@$2</a>",$tweet);
        
$tweet preg_replace('/(?:(?:^#|[\s\(\[]#(?!\d\s))(\w+(?:[_\-\.\+\/]\w+)*)+)/'
                            
' <a href="http://search.twitter.com/search?q=$1">#$1</a> '
                            
$tweet);        
        
$tweet .= "<br /><small>posted ".date("\@ g:i A, M dS",strtotime($d[1]))."</small>"
    } else { 
        if(
$fiw==1) { file_put_contents($tw_File,''); $tweet=''; } 
    } 
    if(
$fiw==1) { file_put_contents($tw_File,$tweet); }
    echo 
$tweet
}
/* ~~~ /latest tweet ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
?>