MongoDb 如何在 PHP 中访问动态子对象
How MongoDb dynamic Child Object access in PHP
MongoDb 如何在 PHP
中访问动态子对象
我有以下示例代码,我需要在 php
中执行相同的查询
我将显示 SHELL 脚本以获得 mongoDB
中的结果
db.getCollection('Data').find({'COLLECTION.2017-06-16': {$type:'object'}});
我如何能够在 PHP 使用数组和对象的集合查询中获得结果。
我试过这样,但它不能正常工作
$finder = $drum->find({'COLLECTION.2017-06-14': {$type:'object'}});
或
$finder = $drum->find(array('COLLECTION.2017-06-14' => array($type:'object')));
提前致谢,我也附上了示例 json。
请参考并给我解决方案。
{
"CODE": "XXXYYY",
"COLLECTION": {
"2017-06-16": {
"TEST": "CLEAR"
},
"2017-06-17":{
"TEST":"PUTPOST"
}
},
"Success": true,
},{
"CODE": "XXXYYYZZZZ",
"COLLECTION": {
"2017-06-16": {
"TEST": "CLEAR"
},
"2017-06-17":{
"TEST":"PUTPOST"
}
},
"Success": true,
}
你的语法有误。在 PHP 中,您不能使用 :
,但需要使用 =>
来进行 key/value 组合。
为了清楚起见,您可以使用 […]
而不是 array(…)
。
您还需要用 '…'
:
将数组键括起来
$drum->find( [ 'COLLECTION.2017-06-14' => [ '$type' => 'object' ] ] );
我还想指出,使用值 (2017-06-14
) 作为键通常不是一个好主意。它通常使查询变得更加困难,甚至不可能找到属于特定月份的一系列文档。
MongoDb 如何在 PHP
中访问动态子对象我有以下示例代码,我需要在 php
中执行相同的查询我将显示 SHELL 脚本以获得 mongoDB
中的结果db.getCollection('Data').find({'COLLECTION.2017-06-16': {$type:'object'}});
我如何能够在 PHP 使用数组和对象的集合查询中获得结果。
我试过这样,但它不能正常工作
$finder = $drum->find({'COLLECTION.2017-06-14': {$type:'object'}});
或
$finder = $drum->find(array('COLLECTION.2017-06-14' => array($type:'object')));
提前致谢,我也附上了示例 json。 请参考并给我解决方案。
{
"CODE": "XXXYYY",
"COLLECTION": {
"2017-06-16": {
"TEST": "CLEAR"
},
"2017-06-17":{
"TEST":"PUTPOST"
}
},
"Success": true,
},{
"CODE": "XXXYYYZZZZ",
"COLLECTION": {
"2017-06-16": {
"TEST": "CLEAR"
},
"2017-06-17":{
"TEST":"PUTPOST"
}
},
"Success": true,
}
你的语法有误。在 PHP 中,您不能使用 :
,但需要使用 =>
来进行 key/value 组合。
为了清楚起见,您可以使用 […]
而不是 array(…)
。
您还需要用 '…'
:
$drum->find( [ 'COLLECTION.2017-06-14' => [ '$type' => 'object' ] ] );
我还想指出,使用值 (2017-06-14
) 作为键通常不是一个好主意。它通常使查询变得更加困难,甚至不可能找到属于特定月份的一系列文档。