jrschumacher/mongofunk

扩展Mongo类以更好地支持各种格式

dev-master 2013-05-06 15:48 UTC

This package is not auto-updated.

Last update: 2024-09-23 13:47:16 UTC


README

Build Status

从Mongo类中修复 funk。

一些Mongo类有点 funk。这个库旨在修复这些问题。

MongoId

大写 funk

如果你向MongoId传递一个大写字符串,它将存储你的字符串

$id = new MongoId("00000000000000000000AAAA");

var_dump($id);

/*
object (
  "$id" => "00000000000000000000AAAA"
)
*/

现在打印它会发生什么?Funk。

print $id; // 00000000000000000000aaaa

比较呢?Funk。

$id == 00000000000000000000AAAA // FALSE

去 funk

一旦传递字符串,我们就 strtolower 它。去 funk。

为什么不直接输出传递的格式呢? 好吧,这可能在数据库中存在一些一致性方面的问题。这样,我希望大多数基础问题都得到了解决,但还需要做一些进一步的测试。

MongoDate

DateTime funk

根据文档,你需要传递一个表示 Unix 时间戳或微时间戳的整数。这是可以理解的,但是 DateTime 要强大得多,并且从面向对象的角度来看,是比时间戳更好的解决方案。

去 funk

你现在可以向 MongoDate 传递 DateTime 对象。

$date = new DateTime();
$mdate = new MongoDate($date);
$date->getTimestamp() == $mdate->sec; // TRUE

你还可以从 MongoDate 对象获取 DateTime

$mdate->getDateTime(); // returns DateTime instance

更多

根据我的经验,这是主要的挫折,但可以添加更多。