Spędziłem 3 dni próbując rozwiązać ten problem bez powodzenia. Używam biblioteki PHP MongoDB i próbuję przekonwertować znacznik czasu w poprawnej dacie na przykładzie w PHP Docs, ale zawsze powraca 1970-01-17.Datownik do tej pory w php i mongodb
Kod jest:
$utcdatetime = new MongoDB\BSON\UTCDateTime(1453939200);
$datetime = $utcdatetime->toDateTime();
var_dump($datetime);
Cześć Chridam, dziękuję za odpowiedź, ale teraz dostaję 1969-12-08 05:14:47 jako datę. Każdy pomysł, dlaczego? –
Wygląda na to, że używasz 32-bitowej wersji PHP, która nie obsługuje liczb tak dużych jak znacznik czasu w milisekundach. Nie ma żadnego obejścia tego problemu, oprócz uruchamiania 64-bitowego PHP, lub nie używania tego obiektu Mongo, ponieważ najwyraźniej chcesz DateTime. '$ foo = new DateTime(); $ foo-> setTimestamp (1453939200); var_dump ($ foo); ' – Sammitch
Zgodziłbym się z @Sammitch tutaj na tym – chridam