jamesgoodwin
@jamesgoodwin
Молодой разработчик

MongoDB GridFS PHP — как прочитать пример?

В официальной документации MongoDB GridFS говорится о том, что для того, чтобы успешно работать с GridFS, разработчик может воспользоваться MongoDB\Driver\Manager или же принадлежащим MongoDB PHP Library классом MongoDB\Database (точнее его методом selectGridFSBucket()). Мой вопрос касается примера того, как это работает. Помогите понять, что и как происходит в следующей строчке:

$bucket = (new MongoDB\Client)->example->selectGridFSBucket();


P.S. Имеется представление, о том что создается менеджер и через него идет обращение к базе example. Но каким образом с таким синтакисом идет обращение не ясно. Документация не сильно разъясняет этот момент, как и то, каким образом можно открыть поток при помощи MongoDB\Driver\Manager. Видимо это достаточно очевидно.
  • Вопрос задан
  • 595 просмотров
Решения вопроса 1
Lobotomist
@Lobotomist
Software Developer
Команду можно разделить на части, чтобы проще было разбираться.

Получаем объект коннекта к базе (MongoDB\Client)
$connection = new MongoDB\Client;

Получаем объект MongoDB\Database для работы с конкретной БД. Тут используется магический метод __get, в документации написано:
Selects a database on the server. This magic method is an alias for the selectDatabase() method.

То есть следующие команды делают одно и тоже.
$database = $connection->example;
$database = $connection->selectDatabase("example");


Ну и теперь получаем объект MongoDB\GridFS\Bucket для работы с хранилищем файлов в базе $database
$bucket = $database->selectGridFSBucket();

Возможно, я как-то не так понял, в чем ваша проблема - так что задавайте доп. вопросы в комментариях
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы