Как добавлять данные в MongoDB на php? Разбираюсь с MongoDB. Нашла примеры работы в php с Mongo, пытаюсь написать метод добавления данных в БД://класс для работы с MongoDB
class Database {
public function save($data){
$m = new MongoClient();
$m -> selectDB(DB_NAME) -> selectCollection(COLLECTION_NAME);
$m -> insert($data);
$m -> close();
}
}
Ошибка на метод insert(). Php его не видит. Не могу понять почему, делаю по примеру отсюда: metanit.com/nosql/mongodb/3.3.php

21 Авг 2019 в 07:05
286 +1
0
Ответы
1

Ошибка возникает из-за того, что метод insert() был вызван не у объекта коллекции, а у объекта MongoClient. Вам нужно передать результат вызова selectCollection() в переменную и у этой переменной вызывать метод insert() для добавления данных в коллекцию.

Ниже приведен исправленный код:

class Database {
public function save($data){
$m = new MongoClient();
$collection = $m->selectDB(DB_NAME)->selectCollection(COLLECTION_NAME);
$collection->insert($data);
$m->close();
}
}

Теперь метод insert() вызывается у объекта $collection, который представляет собой коллекцию в базе данных MongoDB.

20 Апр 2024 в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир