Я пытался использовать Монго :: команды в PHP для создания MapReduce, но каждый раз, когда я бег моего кода я получаю следующее сообщение об ошибке: PHP Fatal Error, call to undefined method "mongo:command"
PHP Монго: команда не найдена
Моего код:
try {
$map = new MongoCode("function() {
if (!this.tags) {
return;
}
for (index in this.tags) {
emit(this.tags[index], 1);
}");
$reduce = new MongoCode("function(previous, current) {
var count = 0;
for (index in current) {
count += current[index];
}
return count;
}");
$tags = $this->db->command(array( //Line the error is found on
"mapreduce" => "blog",
"map" => $map,
"reduce" => $reduce));
$con=$this->db->selectCollection($tags['result'])->find();
var_dump($con);
}
catch(MongoCursorException $e) {
echo "error message: ".$e->getMessage()."\n";
echo "error code: ".$e->getCode()."\n";
}
Обратите внимание: $this->db
относится к моему соединению (ранее определенному) и blog
- это коллекция.
Для справки я использовал: http://php.net/manual/en/mongodb.command.php
ОС я использую Ubuntu 12,04, и я проверил оба php.ini файлы, которые включают в себя как mongo.so - я могу сделать нормальные запросы с MongoDB, как и вставки выбор данных, его просто команда, похоже, не работает.
Выбрана дБ, при определении '$ this-> db'. Как упоминалось, он работает для '$ this-> db-> blog-> find();' – Daniel
вы проверяете с заменой 'demo' на' blog' –
Да, я пробовал это, но получаю ту же ошибку. Возможно, я должен сказать, что 'blog' - это не база данных, это коллекция как часть базы данных. – Daniel