2013-12-22 85 views
0

我有一些基本的FQL代碼,我想將時間戳轉換爲「g:i F jS Y」,雖然返回總是「1970年1月1日7:00」。在FQL中轉換UNIX時間

我在查詢MySQL之前使用過相同的代碼。

我究竟做錯了什麼?這是最佳做法嗎?

$result = $facebook->api(array('method' => 'fql.query', 'query' => 'SELECT post_id,message,permalink,updated_time 
                     FROM stream 
                     WHERE source_id=' . $page_id . ' LIMIT 4')); 




    foreach ($result as $post) { 

     ?> 



<tr class="feed"><td><p><?= $post['message'] ?> <br><br> <pink><?= date('d-m-Y', strtotime($post['updated_time']))?> </pink> <br> <a target="_blank" class="tweet-link" href="<?= $post['permalink'] ?>">View on Facebook</a></p></td></tr> 


<? 
+0

'$ post ['updated_time']'的值是什麼格式?看起來像這可能只是不支持'strtotime()'的格式。因爲'strtotime()'將在失敗時返回'false',出於任何失敗原因,並且'(int)false == 0',其中0是1月的日期。 – loushou

+0

這是一個UNIX時間戳。 – user2994718

回答

0

如果$post['updated_time']是一個有效的UNIX時間戳,那麼就這樣做,而不是:

date('d-m-Y', $post['updated_time']) 

沒有必要問的strtotime重新分析時間戳,一個時間戳。

+0

太棒了。這就是訣竅!謝謝! – user2994718

+0

完全沒有問題 – loushou