2011-12-29 4 views
0

PHPを使用してmongo dbからレコードを取得しようとしています。 mongoコレクションの_idフィールドを使用してレコードにアクセスしようとしています。しかし、私は対応するレコードを取得することができず、私はnullを取得しています。これは私が使用しているコードです。phpを使用してmongo dbから "_id"に基づいてレコードを取得します

$db = $this->Generalmodel->connect(); 
$collection = $db->listing; 
$cursor = $collection->findOne(array("_id"=>$id)); 
var_dump($cursor); 

私はまた、次のと役に立たないですが、あまりにも

$collection = $db->listing; 
$cursor = $collection->find(array('$and' => array(array('_id' => $id), array('blocked' => "0")))); 
foreach ($cursor as $obj) 
var_dump($obj) 

私はここで何かをしないのですでそれを試してみましたか?

+0

'$ id'の値は何ですか? –

+0

私のセッションから取得した値です。基本的には、mongoによって生成された_idで、これを使って1つのエンティティに関する詳細情報を選択しているエンティティのリストからです – swordfish

+0

どういうタイプですか?実際のObjectId、または文字列に変換されましたか? –

答えて

2

配列( '_ id' =>新しいMongoID($ id))

+0

@Sergei Tulentsevの後にこれが見つかりました – swordfish

関連する問題