Я использую php версии 7.0 в Ubuntu 16.04. Это подробное решение. Пропустите те части, которые вы успешно выполнили.
Сначала я вручную установил mongodb, а затем драйвер mongodb-php.
1) Установка монго дб. Введите следующие команды:
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
$ echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
$ sudo apt-get update
$ sudo apt-get install -y mongodb-org
Чтобы правильно запустить Mongdb как службу, то есть автоматически запустить Mongodb при запуске системы, выполните следующие действия:
Создайте файл mongodb.service в / etc / systemd / system /, введя команду:
$ sudo nano /etc/systemd/system/mongodb.service
Вставьте в него следующее содержимое:
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
Затем введите следующие команды:
$ sudo systemctl start mongodb
$ sudo systemctl enable mongodb
2) Установка драйвера mongo-php:
$ sudo pecl install mongodb
Также вы можете получить сообщение об ошибке: phpize not found. Phpize - это команда, которая используется для создания среды сборки. Эта ошибка может появиться во время установки любого расширения pecl. Чтобы решить эту проблему, команда phpize не найдена, пользователь должен установить пакет php5-dev.
Для его установки введите команду:
$ sudo apt-get install php7.0-dev
Затем в файле php.ini, который находится в каталоге /etc/php/7.0/apache2, добавьте расширение dong mongo:
$ sudo nano /etc/php/7.0/apache2/php.ini
Добавьте следующую строку в файл:
extension = mongodb.so;
(Точно так же, как вы знаете, точное местоположение файла mongodb.so находится в /usr/lib/php/20151012/mongodb.so.)
.
Итак, dong монго установлен вместе с его драйвером.
3) Имейте в виду, что классы mongo-php были изменены. Большинство доступных ресурсов в сети дают решения, использующие старые классы, которые заменяются. Ниже приведены ссылки, на которые вы можете сослаться:
http://php.net/manual/en/set.mongodb.php
http://zetcode.com/db/mongodbphp/
Вот несколько команд для основных операций с базой данных:
$mng = new MongoDB\Driver\Manager(); // Driver Object created
Чтобы вставить данные в базу данных:
$bulk = new MongoDB\Driver\BulkWrite;
$doc = ["_id" => new MongoDB\BSON\ObjectID, "data" => $someData, "info" => $someInfo];
$bulk->insert($doc);
$mng->executeBulkWrite('dbName.collectionName', $bulk);
Для получения данных:
$query = new MongoDB\Driver\Query([]);
$rows = $mng->executeQuery("dbName.collectionName", $query);
foreach ($rows as $row)
{
echo "$row->data - $row->info\n";
}