Instalacja

Ostrzeżenie

To rozszerzenie jest przestarzałe. Powinieneś użyć rozszerzenia MongoDB

The MongoDB PHP driver should work on nearly any system: Windows, macOS, Unix, and Linux; little- and big-endian machines; 32- and 64-bit machines; PHP 5.3 through 5.6 (versions prior to 1.6 also support PHP 5.2).

To rozszerzenie » PECL nie jest dołączane do PHP.

Manual Installation

For driver developers and people interested in the latest bugfixes, you can compile the driver from the latest source code on » Github. Go to Github and click the "download" button. Then run:

$ tar zxvf mongo-php-driver-legacy-<commit_id>.tar.gz
$ cd mongo-php-driver-legacy-<commit_id>
$ phpize
$ ./configure
$ make all
$ sudo make install

Make the following changes to php.ini:

  • Make sure the extension_dir variable is pointing to the directory containing mongo.so. The build will display where it is installing the PHP driver with output that looks something like:

    Installing '/usr/lib/php/extensions/no-debug-non-zts-20060613/mongo.so'
    Make sure that it is the same as the PHP extension directory by running:
    $ php -i | grep extension_dir
      extension_dir => /usr/lib/php/extensions/no-debug-non-zts-20060613 =>
                       /usr/lib/php/extensions/no-debug-non-zts-20060613
    If it's not, change the extension_dir in php.ini or move mongo.so.

  • To load the extension on PHP startup, add a line:

    extension=mongo.so

Installing on *NIX

Run:

$ sudo pecl install mongo

Add the following line to your php.ini file:

extension=mongo.so

If pecl runs out of memory while installing, make sure memory_limit in php.ini is set to at least 128MB.

Installing on Windows

Precompiled binaries for each release are available from » PECL for a variety of combinations of versions, thread safety, and VC libraries. Unzip the archive and put php_mongo.dll in your PHP extension directory ("ext" by default).

Add the following line to your php.ini file:

extension=php_mongo.dll

Informacja: Additional DLL dependencies for Windows Users

Aby poprawnie działało rozszerzenie, pliki DLL muszą znajdować się w miejscu wskazanym przez PATH systemu Windows. Aby uzyskać więcej informacji zobacz FAQ zatytułowane "Jak mam dodać mój katalog PHP do PATH w Windows". Chociaż skopiowanie plików DLL z folderu PHP do systemowego katalogu Windows także zadziała (ponieważ katalog systemowy jest domyślnie w PATH systemu), ale nie jest to wymagane. To rozszerzenie wymaga następujących plików znajdujących się w PATH: libsasl.dll

macOS

In most cases installing from PECL is the easiest way:

$ sudo pecl install mongo

If your system has multiple version of PHP installed (e.g. macOS default, Homebrew, » XAMPP), note that that each version of PHP has its own pecl command and php.ini file.

Informacja: Xcode dependency for compiling on macOS

Compiling the driver on macOS will require Xcode developer tools, which may be installed with xcode-select --install. If that command is not available, you may first need to install the » Command Line Tools package.

Gentoo

Gentoo has a package for the PHP PECL driver called dev-php/pecl-mongo, which can be installed with:

$ sudo emerge -va dev-php/pecl-mongo

If you use PECL, you may get an error that libtool is the wrong version. Compiling from source you'll need to run aclocal and autoconf.

$ phpize
$ aclocal 
$ autoconf 
$ ./configure
$ make
$ sudo make install

Red Hat

This includes Fedora and CentOS.

The default Apache settings on these systems do not let requests make network connections, meaning that the driver will get "Permission denied" errors when it tries to connect to the database. If you run into this, try running:

$ /usr/sbin/setsebool -P httpd_can_network_connect 1
Then restart Apache. (This issue has also occurred with SELinux.)

Third-Party Installation Instructions

A number of people have created excellent tutorials on installing the PHP driver.

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top