dev-master
9999999-dev https://github.com/jrschumacher/mongofunkExtends Mongo classes to better support various formats
MIT
by Ryan Schumacher
Extends Mongo classes to better support various formats
Fixin' the funk out of Mongo classes., (*2)
Some of the Mongo classes act a little funky. This library intends to fix those., (*3)
If you pass a capitalized string to MongoId it will store your string, (*4)
$id = new MongoId("00000000000000000000AAAA"); var_dump($id); /* object ( "$id" => "00000000000000000000AAAA" ) */
Now what happens if print it? Funk., (*5)
print $id; // 00000000000000000000aaaa
And what about comparing? Funk., (*6)
$id == 00000000000000000000AAAA // FALSE
As soon as the string is passed we strtolower
it. Defunked., (*7)
Why don't you just output the passed format? Well that has some issue with consistency in the database. This way I am hoping most of the bases are covered, but will need to do some further tests., (*8)
Per the documentation you need to pass an integer which represents a Unix timestamp or microtimestamp. This is understandable except DateTime is much more powerful and from the OO perspective a much better solution than timestamps., (*9)
You can now pass DateTime objects to MongoDate., (*10)
$date = new DateTime(); $mdate = new MongoDate($date); $date->getTimestamp() == $mdate->sec; // TRUE
You can also get a DateTime from MongoDate object, (*11)
$mdate->getDateTime(); // returns DateTime instance
From my expierience that is the main frustrations, but more can be added., (*12)
Extends Mongo classes to better support various formats
MIT