如何在Unix时间戳中提取月,日,年,小时?

时间:2015-10-03 06:09:59

标签: javascript mysql timestamp fullcalendar strtotime

在我的数据库中,因为我使用strtotime插入转换为时间戳的日期和时间,它就像" 1444600800"我还有一个特定服务的持续时间,转换为相同的过程,#34; 1443740700",现在我正在使用https://github.com/almasaeed2010/AdminLTE,其中' http://fullcalendar.io/,在日历事件中,对于事件编码如此:

  events: [
                    {
                        title: 'All Day Event',
                        start: new Date(y, m, 1),
                        end: new Date(y, m, d, 13, 30),
                        backgroundColor: "#f56954", //red 
                        borderColor: "#f56954" //red
                    } ]

我这样编码但没有成功:

events:
    [
    <?php $event_query = mysql_query("select *,TIME_FORMAT   (`appoint_date`, '%H:%i') from appointment INNER JOIN service,user where  appointment.user_id = user.user_id and service.service_id =  appointment.service_id")or die(mysql_error());
          while($event_row = mysql_fetch_array($event_query)){


    ?>
    {
        title  : '<?php echo $event_row['firstname']; ?> ',
        start  : <?php echo $event_row['appoint_date']; ?>,
        end  : <?php echo $event_row['duration']; ?>,
        allDay: false,
        backgroundColor: "#3c8dbc", //Primary (light-blue)
        borderColor: "#3c8dbc" //Primary (light-blue)
    },
    <?php } ?>
    ]

我正在考虑提取时间戳中的日期,月份,小时,我可以将我的时间戳的小时值从服务持续时间添加到日期和时间时间戳,并将其编码为样本。用公式:

`$nextWeek = time() + (7 * 24 * 60 * 60);
               // 7 days; 24 hours; 60 mins; 60 secs
echo 'Now:       '. date('Y-m-d') ."\n";
echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n";
// or using strtotime():
echo 'Next Week: '. date('Y-m-d', strtotime('+1 week')) ."\n";`

该怎么办?

2 个答案:

答案 0 :(得分:1)

start: new Date(<?=$event_row['appoint_date']?>000)

请注意,您需要乘以1000(在上面,只需添加三个零)因为JS中的时间戳以毫秒为单位,而在PHP中它们只需几秒钟。

答案 1 :(得分:0)

Date构造函数有一个单参数版本,它接受自Epoch以来的毫秒数。 Unix时间戳通常是自上帝以来的秒数(无论如何),所以:

start : new Date(<?php echo $event_row['appoint_date']; ?> * 1000),

...将在客户端创建相关日期(请注意* 1000)。