从MySQL时间戳中获取时间并以小时,分钟等显示?

时间:2013-02-15 04:05:49

标签: php mysql

我正在尝试以秒,分,天等方式回显MySQL中的timestamp

脚本工作正常,但我不得不整理一下代码,现在它不会得到时间;它只是回显0 days0 hours0 whatever

在我触及时间代码之前就是这样,但我不能这样,因为我必须编辑一些div订单。

所以我的问题是请有人告诉我或告诉我我为此做了什么让它停止工作?谢谢

之前的情况:

<div class="board-wall-feeds">        
<div class="social_header">
<?php echo "$profile[2]" ?>'s News & Updates:
</div>        
<?php
$timeline_set = get_timeline();
while ($news = mysql_fetch_array($timeline_set)) { 
echo "

<div class=\"news_feeds_board_text\">{$news['content']}
<div class=\"social_footer\"><a href=\"../../../delete_news_post.php?to=".$news['id']."</div><div class=\"social_clip\"></div></a>"; ?>


        <?
        $datetime1 = new DateTime();
        $datetime2 = new DateTime ($news['date_added']);
        $interval = $datetime1->diff($datetime2);
        $mdhms = explode('-',$interval->format('%m-%d-%H-%i-%s'));

$labels = Array(' months', ' days', ' hours', ' minutes', ' seconds');
$i = 0;
foreach($mdhms as $t){
  if($t > 0) break;
  $i+=1;
}

        echo "about ".$t.$labels[$i]." ago"; ?></div></div>
        <? } ?>

现在使用我的新div订单:

 <div class="board-wall-feeds">        
<div class="social_header">
<?php echo "$profile[2]" ?>'s News & Updates:
</div>        
<?php


        $datetime1 = new DateTime();
        $datetime2 = new DateTime ($news['date_added']);
        $interval = $datetime1->diff($datetime2);
        $mdhms = explode('-',$interval->format('%m-%d-%H-%i-%s'));

$labels = Array(' months', ' days', ' hours', ' minutes', ' seconds');
$i = 0;
foreach($mdhms as $t){
  if($t > 0) break;
  $i+=1;
}



$timeline_set = get_timeline();
while ($news = mysql_fetch_array($timeline_set)) { 
echo "

<div class=\"news_feeds_board_text\">{$news['content']}
<div class=\"social_footer\">about ".$t.$labels[$i]." ago<a href=\"../../../delete_news_post.php?to=".$news['id']."</div><div class=\"social_clip\"></div></div></a>"; ?>


        <? } ?>
        </div>

2 个答案:

答案 0 :(得分:2)

以下查询会将小时,分钟,秒与NOW()所用的当前时间分开。

SELECT DATE_FORMAT(NOW(),'%H-%i-%S')

答案 1 :(得分:1)

你也可以在mysql查询中获取如下内容。

SELECT  STR_TO_DATE(`time_stamp`, FORMAT) as ALIAS FROM 'table_name'

其中format的格式是您想要的日期。

例如仅限获取month将其用作 STR_TO_DATE(time_stamp,'%m'),依此类推。