mongodb';文件';PHP中的变量定义
我正在使用Codeigniter和PHP。 我们可以为mongodb查询定义空数组,如下所示:mongodb';文件';PHP中的变量定义,php,codeigniter,mongodb,mongodb-php,Php,Codeigniter,Mongodb,Mongodb Php,我正在使用Codeigniter和PHP。 我们可以为mongodb查询定义空数组,如下所示: $db->user->insert(array('report'=> array())); $a = array(); $db->user->insert(array('report'=> $a)); 如何在PHP中为mongodb定义空的文档(数据类型)? 在这里我知道,我可以在使用另一个运行时查询(使用$set或其他)时创建文档变量。但是当我插入时,我需要创
$db->user->insert(array('report'=> array()));
$a = array();
$db->user->insert(array('report'=> $a));
如何在PHP中为mongodb定义空的文档(数据类型)?
在这里我知道,我可以在使用另一个运行时查询(使用$set或其他)时创建文档
变量。但是当我插入时,我需要创建文档
变量
如果我像下面这样创建文档变量
$db->user->insert(array('report'=> array()));
$a = array();
$db->user->insert(array('report'=> $a));
以下代码不起作用
$db->user->update(
array('user' => $user ),
array('$set' => array(
'report.' . $number =>
array('id'=>$number, 'on' => time(), 'status'=> 0)
)));
这里,$number
是字符串变量。MongoDB PHP驱动程序支持发送空对象(它的末尾没有验证以确保发送有价值的内容)要保存,但在不知道刚刚保存的对象的\u id
的情况下,检测到此保存对象的方法无效,可以执行以下操作:
$a = array();
$db->user->insert($a);
var_dump($a['_id']);
因为如果传递了一个变量,MongoDB的insert函数将修改(通过引用)原始变量并向其添加\u id
字段
但是,不能将“空”对象(没有不可变的\u id
的对象)保存到正常集合中。这当然与封顶收藏不同。最后,我的问题没有答案。我找了很多地方。因此,我们可以在使用另一个运行时查询(使用$set或else)时创建文档
变量。谢谢。您的意思是文档中名为document
的字段吗?@Sammayedocument
是MongodBW中的数据库字段类型,如果像示例中那样传递空数组(),会发生什么情况?这应该可以工作并存储一个空文档。@SaschaM78是吗?你有解释文档字段类型的页面吗?@SaschaM78:实际上是BSON文档支持的类型列表。那又怎样?你所说的括号是什么意思?@KarSho Yea所以你在编辑的最后一行看到3个括号的地方应该只有两个。你能给我们看一下你的更新内容的示例文档吗?你能告诉我们$user
是什么吗?你确定这真的找到了医生吗?