GNU/Linux >> LINUX-Kenntnisse >  >> Linux

- mongodb/mongodb 1.2.0 erfordert ext-mongodb ^1.3.0 -> die angeforderte PHP-Erweiterung mongodb fehlt auf Ihrem System

Composer gibt Ihnen dort die richtige Antwort, Sie verwenden die falsche Bibliothek. Verwenden Sie nicht --ignore-platform-reqs, oder Sie können, um die Installation zu erzwingen. Was Sie jetzt tun müssen, ist zu überprüfen, welche Bibliothek zu Ihrer passt php-Version. Schreiben Sie

php --version

wenn Sie nicht wissen, welches Sie verwenden. Die Ausgabe sollte in etwa so aussehen:

PHP 5.6.30-0+deb8u1 (cli) (built: Feb  8 2017 09:49:20)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Finden Sie Ihre Version in der Liste unten.

Siehe die Beschreibung in mongodb:PHP-Treiber für mongodb

Gehen Sie zu pecl und laden Sie die Version herunter, die zu Ihrer PHP-Versionsnummer passt.

in Ihrem Fall (PHP5.6):

$ wget https://pecl.php.net/get/mongodb-1.2.11.tgz
$ tar -xvzf mongodb-1.2.11.tgz
$ cd mongodb-1.2.11/
$ phpize
$ ./configure
$ make all -j 5
$ sudo make install

jetzt sollte es funktionieren.

Sie können die PHP-Mongodb-Verbindung mit diesem Code testen (finden Sie eine ObjectId):

<?php
# filename ConnectMongo.php
require_once __DIR__ . "/vendor/autoload.php";

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

// connect to mongodb
$manager = new MongoDB\Driver\Manager('mongodb://username:[email protected]');

$id = new \MongoDB\BSON\ObjectId("5a0c8e2362eb6404c2f10032");
$filter = ['_id' => $id];
$options = [];

$query = new \MongoDB\Driver\Query($filter, $options);
$rows   = $manager->executeQuery('db.collection', $query);
foreach ($rows as $document) {
    var_dump($document);
}
?>

Schreiben Sie im Terminal Folgendes, um die Verbindung zu testen:

$ php ConnectMongo.php

Stellen Sie sicher, dass Sie auch mit Composer installieren, Sie sollten nicht mehr denselben Fehler erhalten.


Linux
  1. Installation des fehlenden mcrypt-Moduls für PHP 7.2

  2. So überprüfen Sie die Geschwindigkeit Ihrer SSH-Verbindung

  3. So überprüfen Sie, ob das System einen Neustart erfordert

  4. Mongodb kann nicht aus Debian entfernt, gelöscht oder deinstalliert werden

  5. Listen Sie alle MongoDB-Datenbanken vom Linux-Bash-Terminal auf

So beheben Sie Ihre PHP-Installation scheint die MySQL-Erweiterung zu fehlen, die von WordPress benötigt wird

MongoDB vs. MySQL

Lernen Sie Ihr System kennen (über die Befehlszeile)

Wählen Sie das beste Dateisystem für Ihr Linux

So installieren Sie den MongoDB GUI Adminer auf AlmaLinux

So übernehmen Sie die Kontrolle über Ihre MongoDB-Sicherheit