MongoDB: запуск и настройка в OpenServer модуля Mongo драйвера под php

Опубликовано: 02 Апрель 2019
на канале: Как стать программистом
4,844
64

Установка mongodb

Для включения Монго достаточно в настройках выбрать последнюю версию модуля и сохранить. Начиная с версии опенсервер 5.2.9 в него включен модуль базы данных Монго 4.0 x64. После перезапуска Монго станет доступна для работы.

Для взаимодействия с базой данных Монго, вставки и извлечения данных, в PHP есть 2 драйвера-расширения
1. Mongo - устревший драйвер php_mongo.dll. Доступен в версиях PHP до 5.6
2. MongoDB - актуальный драйвер для базы php_mongodb.dll. Доступен начиная с версии 5.5 и PHP 7

-------------------------------------
Установка драйвера для работы на PHP с Монго
https://www.php.net/manual/ru/mongodb...
В случае если вы будете работать с устаревшим драйвером Mongo в более ранних версиях PHP, нужно проверить включено ли расширение php_mongo.dll. Для взаимодействия с Монго нужно использовать соответствующие этому модулю функции.
Что же касается работы с драйвером MongoDB под PHP 7, его нужно дополнительно установить через composer. Если композер у вас не установлен (проверить можно через командную строку) - его нужно установить.
Перейти в свою рабочую папку и введя в командной строке
composer require mongodb/mongodb
Более подробно описано на сайте php.net
https://www.php.net/manual/ru/mongodb...
В результате в вашей рабочей директории будет создана папка vendor

-------------------------------------
После установки обертки драйвера, можно приступать к работе с Монго. В первую очередь создамим файл test.php.
Подключим в него файл-автозагрузчик , и создадим экземлпяр Монго драйвера

require 'vendor/autoload.php';
$client = new MongoDB\Client("mongodb://localhost:27017");

Структура базы Монги отличается от SQL баз и выглядит примерно так
http://mellarius.ru/dbmongo/sql-nosql...

С драйвером PHP нам не нужно мучаться и создавать базы данных или таблицы - здесь все делается само по себе, простым обращением к свойствам объекта-драйвера. В результате мы получаем ссылку на коллекцию.
$collection = $client-*anydb-*anytable;


Вставить данные тут тоже очень легко, используя метод insertOne коллекции, мы вставляем документ в коллекцию.
$result = $collection-*insertOne( [ 'name' =* 'Hinterland', 'brewery' =* 'BrewDog' ] );

echo "Идентификатор вставленного документа '{$result-*getInsertedId()}'";

Получить массив документов коллекции можно так
$result = $collection-*find()-*toArray();

Получить список созданных баз данных можно следующим методом
$dbs = $client-*listDatabases();

-------------------------------------
https://robomongo.org/
Когда мы насоздавали кучу баз и таблиц, удобнее всего посмотреть и управлять ими, каким-то стандартным механизмом. До версии 5.3 в опенсервер был инструмент RockMongo, но даже в версии 5.2.9 он уже не работает, по всей видимости потому что работал со старой версией драйвера.
Для администрирования MongoDB разработчики Опенсервер рекомендуют использовать Робомонго, который не входит в поставку Опенсервер еще, но его можно скачать и установить с сайта https://robomongo.org/


Смотрите видео MongoDB: запуск и настройка в OpenServer модуля Mongo драйвера под php онлайн без регистрации, длительностью часов минут секунд в хорошем качестве. Это видео добавил пользователь Как стать программистом 02 Апрель 2019, не забудьте поделиться им ссылкой с друзьями и знакомыми, на нашем сайте его посмотрели 4,84 раз и оно понравилось 6 людям.