1
最初のクエリはRobomongoで動作します。しかし、それをPHPに変換する際に問題があります。MongoDBのクエリをPHPに変換する
私は更新されたバージョンを含めました。何かが不足している場合は教えてください。
これは、(MongoDBのクエリ)
db.statusNew.find(
{_id: ObjectId("123")},
{
statuses: {
$elemMatch: {
id : 321
}}
}
).limit(1)
これは動作しません(PHPへの翻訳が)
$queryOri = array(
(_id: new MongoId($id)),
(
statuses: (
$elemMatch: (
id : $tweetID['id']
))
)
);
$query = $collection.find($queryOri).limit(1);
更新動作します!
$collection -> find(
array('_id' => new MongoId($id)),
array(
'statuses' => array(
$elemMatch: (
id: $tweetID['id']
)
)
)
);
アレイは、次のようになります。
Array
(
[_id] => MongoId Object
(
[$id] => 123
)
[statuses] => Array
(
[0] => Array
(
[id] => 321
[text] => Tweet no 1
)
[1] => Array
(
[id] => 322
[text] => Tweet no 2
)
[2] => Array
(
[id] => 323
[text] => Tweet no 3
)
)
)