Fullcalendar js和Firefox中的日期无效,如何?

时间:2015-07-14 19:42:52

标签: javascript php date fullcalendar momentjs

我使用php将一些数据发送到fullcalendar,但日历日期显示为Invalid DateNaN

查看下面的日期格式,任何想法如何解决这个问题?

PHP

foreach ($dates as $key => $date) {
    //$date->getDate() is a timestamp
    $start = new DateTime($date->getDate());
    $end   = new DateTime($date->getDate() + 1800);

    $array[$key]['start']       = $start->format('c');
    $array[$key]['end']         = $end->format('c');
}

的JavaScript

$calendar.fullCalendar({
    header     : h,
    defaultView: 'month',
    slotMinutes: 15,
    editable   : false,
    droppable  : false,
    events     : {
        url : '/api',
        type: 'POST',
        data: data
    }
});

编辑:

我最终使用:

$dA = date('Y-m-d H:i:s', $date->getDate());
$datetimeA = new DateTime($dA);

$array[$key]['start'] = $datetimeA->format(DateTime::ISO8601);

1 个答案:

答案 0 :(得分:0)

因为日期格式不正确,Firefox需要使用UTC格式,即:

 yyyy + '-' + mm + '-' + dd + 'T' + hh + ':' + min + 'Z';
behe yyyy格式化为4位数年份, mm格式为2位数的月份(1月 - 00,零很重要), dd当天格式化为2位数, 那个小时格式化为2位数 将分钟格式化为2位数。

T和Z是常数。

所以如果您想要小时和分钟,只需将格式更改为:

$array[$key]['start']       = $start->format('Y-m-d\TH:i:s\Z');
$array[$key]['end']         = $end->format('Y-m-d\TH:i:s\Z');
希望这有效。 请告诉我它是否没有,我们会尝试解决它:)