【问题标题】:Twitter feed get time since posted - php自发布以来的 Twitter 提要获取时间 - php
【发布时间】:2014-05-02 18:49:54
【问题描述】:

我正在使用它来生成我的推特供稿:

    # 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

【问题讨论】:

    标签: php twitter


    【解决方案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";
    }
    

    【讨论】:

    • $tweetDate 目前是Tue Apr 29 09:43:17 +0000 2014
    • 使用 $tweetDate = strtotime($tweetDate);
    猜你喜欢
    • 2012-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-13
    • 2015-04-14
    • 1970-01-01
    相关资源
    最近更新 更多