sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur returnerar man ISO-datumformat i PHP för MongoDB?

Du kan köra __toString funktionen, eller använd sec fältet

__toString returnerar en tidsstämpel i usecs, som du kan skicka till date() efter att ha separerat sekunderna från millisekunder - läs här:http://us1.php.net/manual/en/mongodate.tostring.php

ELLER, jag föredrar personligen att mongodb returnerar bara sekunderna, som kan kopplas direkt till date() - läs här:http://php.net/manual/en/class.mongodate.php

Dessutom, om du genererar en MongoDate() för just nu, behöver du inte ange time();

För att returnera ett isodat måste du göra detta:

echo date(DATE_ISO8601, (new MongoDate())->sec);

...

$exampleDate = new MongoDate();
echo date(DATE_ISO8601, $exampleDate->sec);

EDIT:För att spara ditt ISO-datum måste du göra följande:

$mongoDateObject = new MongoDate(strtotime("2012-11-02T08:40:12.569Z"));


  1. Redis är tom efter uppstart, även om det finns en .rdb-fil

  2. Flera $elemMatch-uttryck för att matcha matrisvärden med $all i MongoDB?

  3. Spring boot + Redis - Genererar en konstig nyckel

  4. Hur man använder $push update modifier i MongoDB och C#, när man uppdaterar en array i ett dokument