Heim >Backend-Entwicklung >PHP-Problem >So installieren Sie PHP Mongodb auf einem Mac
So installieren Sie PHP Mongodb auf dem Mac: 1. Laden Sie die Mongodb-Erweiterung von PHP herunter; 2. Entpacken Sie das Installationspaket; führen Sie phpize aus und bereiten Sie die Umgebung für die Installation der Erweiterung vor; die PHP-Erweiterung von Mongodb; 5. Fügen Sie die Mongodb-Erweiterung zum Erweiterungsbereich hinzu.
Die Betriebsumgebung dieses Artikels: macOS10.13.3-System, mongodb1.4.3 und PHP7.1.16-Version, MacBook Air 2019-Computer
Wie installiere ich PHP Mongodb auf einem Mac?
Wie installiere ich mongod b unter PHP auf dem Mac Erweiterung:
phpize-Pfad ist /usr/local/php/bin/phpize.
php-config-Pfad ist /usr/local/php/bin/php-config.
1. Laden Sie zuerst die Mongodb-Erweiterung von PHP herunter
Laden Sie das Quellcodepaket der Mongodb-Erweiterung von http://pecl.php.net/package/mongodb herunter (Hinweis: Laden Sie es nicht von http://pecl.php herunter .net/ package/mongo (da dieses Paket abgelaufen ist), führen Sie den folgenden Befehl in der Befehlszeile aus:
wget http://pecl.php.net/get/mongodb-1.4.3.tgz
2. Entpacken Sie das Installationspaket
tar -zxvf mongodb-1.4.3.tgz
3. Führen Sie phpize aus und bereiten Sie die Umgebung vor Installation der Erweiterung
cd mongodb-1.4.3 /usr/local/php/bin/phpize
4. Kompilieren Sie die PHP-Erweiterung von mongodb
Nach Abschluss von Schritt 3 wird die Konfigurationsdatei im aktuellen Verzeichnis generiert. Als nächstes verwenden Sie den Befehl ./configure zum Installieren und Konfigurieren. Anschließend verwenden Sie make && make install zum Kompilieren und Installieren. Der Befehl lautet wie folgt:
./configure --with-php-config=/usr/local/php/bin/php-config make && make install
5. Überprüfen Sie, ob die Erweiterungsdatei .so in der PHP-Erweiterung generiert wurde Verzeichnis
php -i | grep extension_dir //查看PHP扩展包存储目录,这里为extension_dir => /usr/local/lib/php/pecl/20160303 => /usr/local/lib/php/pecl/20160303 ls /usr/local/lib/php/pecl/20160303 //查看目录中是否有mongodb.so文件
6. Bearbeiten Sie php.ini und fügen Sie die Mongodb-Erweiterung im Erweiterungsbereich hinzu
extension=mongodb.so
Hinweis: Der Name der Erweiterung ist mongodb.so, nicht mongo.so.
7. Überprüfen Sie, ob das PHP-Mongodb-Erweiterungsmodul erfolgreich installiert wurde
php -m | grep mongodb
Wenn Sie mongodb in den direkten Ergebnissen sehen, bedeutet dies, dass es erfolgreich installiert wurde.
Oder starten Sie php-fpm neu und führen Sie dann die phpinfo()-Methode aus. Wenn Sie den Inhalt von mongodb sehen, ist die Installation erfolgreich.
8. Verwenden der Mongodb-Erweiterung in PHP
Nach der Installation der Mongodb-Erweiterung für PHP fügen Sie „mongodb/mongodb“: „^1.4“ im Anforderungsblock der Datei „composer.json“ hinzu. Laden Sie dann das Erweiterungspaket des Mongodb-PHP-Versionsclients über den Composer-Befehl. Der Befehl lautet wie folgt:
composer require mongodb/mongodb
Das Ergebnis ist der folgende Fehler:
Using version ^1.4 for mongodb/mongodb ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - mongodb/mongodb 1.4.2 requires ext-mongodb ^1.5.0 -> the requested PHP extension mongodb has the wrong version (1.4.3) installed. - mongodb/mongodb 1.4.2 requires ext-mongodb ^1.5.0 -> the requested PHP extension mongodb has the wrong version (1.4.3) installed. - mongodb/mongodb 1.4.1 requires ext-mongodb ^1.5.0 -> the requested PHP extension mongodb has the wrong version (1.4.3) installed. - mongodb/mongodb 1.4.0 requires ext-mongodb ^1.5.0 -> the requested PHP extension mongodb has the wrong version (1.4.3) installed. - Installation request for mongodb/mongodb ^1.4 -> satisfiable by mongodb/mongodb[1.4.0, 1.4.1, 1.4.2]. To enable extensions, verify that they are enabled in your .ini files: - /usr/local/etc/php/7.1/php.ini - /usr/local/etc/php/7.1/conf.d/ext-opcache.ini You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode. Installation failed, reverting ./composer.json to its original content.
Die Analyse ergab, dass die installierte Mongodb-Erweiterungsversion zu niedrig ist. Wechseln Sie also zu Version 1.5.3 (mongodb-1.5.3.tgz), wiederholen Sie den Vorgang und laden Sie das Erweiterungspaket des Mongodb-PHP-Versionsclients erneut über den Composer-Befehl, und alles ist in Ordnung. Die spezifischen Informationen lauten wie folgt:
sing version ^1.4 for mongodb/mongodb ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 5 installs, 12 updates, 1 removal - Removing aliyuncs/oss-sdk-php (v2.3.0) - Updating league/flysystem (1.0.48 => 1.0.49): Downloading (100%) - Installing ralouphie/getallheaders (2.0.5): Loading from cache - Updating guzzlehttp/psr7 (1.4.2 => 1.5.0): Checking out 53662d6688 - Installing symfony/contracts (v1.0.1): Downloading (100%) - Updating symfony/translation (v4.1.7 => v4.2.0): Checking out ff9a878c9b - Updating nesbot/carbon (1.34.3 => 1.36.1): Checking out 63da8cdf89 - Updating symfony/dom-crawler (v4.1.7 => v4.2.0): Checking out 7438a32108 - Updating symfony/browser-kit (v4.1.7 => v4.2.0): Checking out db7e59fec9 - Updating symfony/console (v4.1.7 => v4.2.0): Checking out 4dff24e5d0 - Updating symfony/css-selector (v4.1.7 => v4.2.0): Checking out aa9fa526ba - Updating symfony/event-dispatcher (v4.1.7 => v4.2.0): Checking out 9b788b5f7c - Updating symfony/finder (v4.1.7 => v4.2.0): Checking out e53d477d7b - Updating symfony/process (v4.1.7 => v4.2.0): Checking out 2b341009cc - Updating symfony/yaml (v4.1.7 => v4.2.0): Checking out c41175c801 - Installing library/aliyun-oss-php-sdk (v2.3.0): Cloning 6e801c85b9 from cache - Installing mongodb/mongodb (1.4.2): Downloading (100%) - Installing justinrainbow/json-schema (5.2.7): Downloading (100%) symfony/contracts suggests installing psr/cache (When using the Cache contracts) symfony/contracts suggests installing psr/container (When using the Service contracts) symfony/contracts suggests installing symfony/cache-contracts-implementation () symfony/contracts suggests installing symfony/service-contracts-implementation () Package phpunit/dbunit is abandoned, you should avoid using it. No replacement was suggested. Writing lock file Generating autoload files
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonSo installieren Sie PHP Mongodb auf einem Mac. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!