PHP中的Twitter API格式“created_at”[重复]

Posted

技术标签:

【中文标题】PHP中的Twitter API格式“created_at”[重复]【英文标题】:Twitter API format "created_at" in PHP [duplicate] 【发布时间】:2014-06-30 08:39:04 【问题描述】:

我需要一个建议如何将 Mon May 12 19:11:38 +0000 2014 转换为 2 分钟前10 分钟前 .

我的编码是这样的。

if(isset($tweets->statuses) && is_array($tweets->statuses)) 
            if(count($tweets->statuses)) 
                foreach($tweets->statuses as $tweet)  
                    echo "<td>";
                    echo $tweet->user->screen_name; 
                    echo "</td>"; 
                    echo "<td>";
                    echo $tweet->text;
                    echo "</td>";
                    echo "<td>";
                    echo $tweet->created_at;
                    echo "</td>";
                echo "</tr>";

我已经实现了类似的东西,我想挖掘created_at,因为它看起来有点奇怪。无论如何,我找到了很多来源,例如this。但那不是我想要的。我想要的是让它显示为2 days ago10 days agoyesterday。有什么想法吗?

【问题讨论】:

@JohnConde 嘿,我已经检查过了,但这是推特。这与那个问题大不相同。 没有不同。他们都做同样的事情。 Twitter 部分无关紧要。 顺便说一句,我永远不会知道我是否遵循这个问题。 @约翰康德 【参考方案1】:

这就是你要找的。​​p>

    function timeSince($time) 

        $since = time() - strtotime($time);

        $string     = '';

        $chunks = array(
            array(60 * 60 * 24 * 365 , 'year'),
            array(60 * 60 * 24 * 30 , 'month'),
            array(60 * 60 * 24 * 7, 'week'),
            array(60 * 60 * 24 , 'day'),
            array(60 * 60 , 'hour'),
            array(60 , 'minute'),
            array(1 , 'second')
        );

        for ($i = 0, $j = count($chunks); $i < $j; $i++) 
            $seconds = $chunks[$i][0];
            $name = $chunks[$i][1];
            if (($count = floor($since / $seconds)) != 0) 
                break;
            
        

        $string = ($count == 1) ? '1 ' . $name . ' ago' : $count . ' ' . $name . 's ago';

        return $string;

    

【讨论】:

@hey cmorrissey,你能告诉我如何开始使用这段代码吗?我有代码以及如何从$tweet-&gt;created_at 链接到timeSince($time) @Anthosiast echo timeSince($tweet-&gt;created_at); Call to undefined function timeSince()。不工作。这是什么问题?我已经将该函数作为 javascript 放在 head 标记上。 @Anthosiast 这不是js 这是php 把它放在用&lt;?php ?&gt; 标签包裹的文档顶部 OHHHH 现在可以了!谢谢!!

以上是关于PHP中的Twitter API格式“created_at”[重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP 将Twitter API日期时间转换为MySQL日期时间格式

处理 PHP JSON 对象中的数据

PHP+JSON+Twitter API

PHP Twitter API代理类

当有人使用twitter api和php发布推文时如何获得通知

PHP 使用PHP从Twitter搜索API到MySQL数据库保存推文