2014-05-02 27 views
0

我用这个来产生我的Twitter饲料:Twitter的饲料获得的时间,因为发布 - PHP

# Access as an object 
    $tweetText = $tweet->text; 
    $tweetDate = $tweet->created_at; 

    # Make links active 
    $tweetText = preg_replace("/(http:\/\/|www.)(([^\s<]{4,68})[^\s<]*)/", '<a href="http://$2$3" target="_blank">$1$2$4</a>', $tweetText); 

    # Linkify user mentions 
    $tweetText = preg_replace("/@(w+)/", '<a href="http://www.twitter.com/$1" target="_blank">@$1</a>', $tweetText); 

    # Linkify tags 
    $tweetText = preg_replace("/#(w+)/", '<a href="http://search.twitter.com/search?q=$1" target="_blank">#$1</a>', $tweetText); 

    # Output 
    echo $tweetText; 
    echo '<br><span>Posted: '; 
    echo $tweetDate; 
    echo '</span>'; 
    echo '<br> <br>'; 

它目前显示的鸣叫张贴的日期,是有办法得到它显示多久之前,推文已发布,例如4小时前,而不是日期?

$tweetDate目前打印Tue Apr 29 09:43:17 +0000 2014

回答

1

使用下面的代码:

$tweetDate = strtotime($tweetDate); 

$diff = time()-$tweetDate; 

if($diff<60){ 
    echo $diff." sec ago"; 
}else if($diff<(60*60)){ 
    echo round($diff/60)." minute ago"; 
}else if($diff<(60*60*24)){ 
    echo round($diff/(60*60))." hours ago"; 
}else{ 
    echo round($diff/(60*60*24))." days ago"; 
} 
+0

'$ tweetDate'目前'周二年04月29 9时43分17秒+0000 2014' –

+0

使用$ tweetDate \t = \t的strtotime( $ tweetDate); –

+0

现在不显示任何时间 –