Как запросить mongo на php?

Итак, у меня есть эта простая функция входа в систему, которая пытается сопоставить адрес электронной почты с паролем в базе данных и сравнить его с данными, введенными пользователем через форму.

function login($email, $password){
    $m = new Mongo("localhost"); 
    $m->connect();
    $db = $m->users;
    $collection = $db->test_collection;

    echo "<pre>";
    var_dump($collection->findOne(array('name' => 'john'))); //returns correctly
    var_dump($collection->find(array('name' => 'john'))); //returns mongo cursor object
    echo "</pre>";
}

Я не понимаю, почему find () возвращает только объект курсора. Ответы?

Это монго-документ

array(5) {
  ["_id"]=>
  object(MongoId)#22 (1) {
    ["$id"]=>"4d7eaa848baf84d32b000000"
  }
  ["activated"]=> (true)
  ["email"]=> "john@smith.com"
  ["name"]=> "john"
  ["password"]=> "334c4a4c42fdb79d7ebc3e73b517e6f8"
}

Как мне выполнить запрос «ГДЕ», чтобы найти и адрес электронной почты, и пароль в одном документе? Я, очевидно, не понимаю правильные параметры для запросов find () и findOne (). Каков правильный синтаксис в PHP?

5
задан michael 17 March 2011 в 04:02
поделиться