2015-10-06 4 views
0

Не уверен, что происходит, но mongodate всегда инициализируется 0 сек. Какие-нибудь мысли о том, что может вызвать это? дата верна на сервере ..MongoDate ошибочно

$d = new MongoDate(); echo sprintf("%s -- %s \n",$d,$d->toDateTime()->format('Y-m-d H:i'));

0,52000000 1037164 - 1970-01-13 00:06

$d = new MongoDate(strtotime("2010-01-15 00:00:00")); echo sprintf("%s -- %s \n",$d,$d->toDateTime()->format('Y-m-d H:i'));

0,52000000 10371640,97600000 793214 - 1970 -01-10 04:20

+0

обновление, это, кажется, метод toDateTime, что на самом деле сбойного .. печать mongodate из дает мне правильное время эпохальное .. –

ответ

0

Хорошо, ну кажется, что mongodate-> todatestring просто не работает.

Итак ... что угодно. ¯ \ _ (ツ) _/¯

Построить свои объекты от даты-времени MongoDate-> сек, потому что #php

$d = new MongoDate(); 
$slugDate = new DateTime(); 
$slugDate->setTimestamp($d->sec); 

echo sprintf("mongodate= %s \n",$d->toDateTime()->format('Y-m-d H:i')); 
echo sprintf("datetime from mongo = %s \n",$slugDate->format('Y-m-d H:i')); 

$ mongodate = 1970-01-13 01:11

$ DateTime из Монго = 2015-10-06 16:47

+0

хорошо, у них есть закрытый трекер ошибок, так что bugger, что. Я считаю, что ошибка находится в строке 156 здесь: https://github.com/mongodb/mongo-php-driver/blob/024c49c587e5b02d5375b9da2617c450fc5d6c3c/types/date.c 156: zval * datetime_object_ptr = & datetime_object; следует переместить в строку 169 –

Смежные вопросы