MongoDB,PHP和序列化的问题

时间:2012-03-13 15:24:34

标签: php codeigniter mongodb mongodb-php

我正在寻找是否有人可以解决我遇到的问题。

在我的集合Y中,我有一个名为ADJU的字段,其中存储了MongoID的序列化PHP数组。

一个示例字段是     “一个:1:{I:0;一个:1:{S:4:\” MBID \ “; C:7:\” MongoId \ “:24:{4f2c5b9bb9a21d5010000005}}}”

传入的参数是     “4f2c5b9bb9a21d5010000005”

public function read_adjudicating(MongoID $account_identifier){
    $regexObj = new MongoRegex("/".$account_identifier->__toString()."/");
    var_dump($regexObj);
    $result = $this->connection->X->Y->find(array('ADJU' => $regexObj), array('__id'));
    var_dump($result);

任何人都可以解释为什么它会给我0条记录,如你所见,一个例子肯定有它吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

嗯,这不是查询:

db.illogical.insert({'ADJU': "a:1:{i:0;a:1:{s:4:\"MBID\";C:7:\"MongoId\":24:{4f2c5b9bb9a21d5010000005}}}"})
db.illogical.find({'ADJU': /4f2c5b9bb9a21d5010000005/})
{ "_id" : ObjectId("4f605b9e5d2b96c06d2adb27"), "ADJU" : "a:1:{i:0;a:1:{s:4:\"MBID\";C:7:\"MongoId\":24:{4f2c5b9bb9a21d5010000005}}}" }

这意味着您编写的php代码与您期望的查询不对应,或者数据不符合您期望的格式。

而不是调查为什么 - 你会更好地关闭IMO,或者在插入mongo之前更新用于从mysql导入数据的脚本以反序列化 - 或者编写一个(php)脚本来读取已经序列化的脚本-mongo数据,反序列化 - 并再次保存。