You think this is to complicated? You use Ubuntu 14 or 16? use this:
sudo apt-get install php-mongodb
This installs everything you need to use MongoDB inside PHP.
Don't stop using MongoDB, is the best that will happen to you.
You're Welcome.
Dezvoltatorii de drivere și persoanele interesate de ultimele bugfix-uri pot compila driver-ul din cel mai recent cod-sursă de pe » Github. Rulați următoarele comenzi pentru a clona și a asambla proiectul:
$ git clone https://github.com/mongodb/mongo-php-driver.git $ cd mongo-php-driver $ git submodule update --init $ phpize $ ./configure $ make all $ sudo make install
Dacă sistemul dumneavoastră are instalate versiuni PHP multiple (de ex. macOS implicit și » XAMPP), atrageți atenția că fiecare versiune PHP are propria comandă phpize și fișierul php.ini.
Implicit driver-ul va folosi versiunile încorporate ale
» libbson,
» libmongoc și
» libmongocrypt și va
încerca să le configureze. Dacă aceste biblioteci sunt deja instalate ca
biblioteci de sistem, puteți instrui driver-ul să le utilizeze specificând
--with-libbson=yes --with--libmongoc=yes
ca argumente pentru
configure
. Începând cu versiunea 1.7.0 a extensiei, aceste
argumente sunt învechite și ar trebui să utilizați în loc
--with-mongodb-system-libs=yes
.
Pentru a obține o listă completă a opțiunilor configure
,
executați configure --help.
La utilizarea versiunilor încorporate ale biliotecilor libbson și libmongoc,
driver-ul de asemenea va încerca să selecteze o bibliotecă SSL în conformitate
cu opțiunea --with-mongodb-ssl
pentru
configure
. Valoarea implicită este
--with-mongodb-ssl=auto
, ce va face să fie căutată Secure
Transport (doar pe macOS), OpenSSL și LibreSSL în această ordine. În plus,
puteți specifica openssl
, libressl
sau
darwin
pentru a forța selectarea respectivă a unei anumite
biblioteci.
Notă:
Dacă procesul de asamblare nu găsește o bibliotecă SSL verificați dacă pachetele de dezvoltare (de ex.
libssl-dev
) și » pkg-config sunt instalate.La utilizarea Homebrew pe macOS, este un lucru obișnuit ca un sistem să aibă instalate multiple versiuni OpenSSL. Pentru a vă asigura că este selectată versiunea dorită OpenSSL, variabila de mediu
PKG_CONFIG_PATH
poate fi folosită pentru a controla calea de căutare pentrupkg-config
. Dacăpkg-config
nu este utilizat,configure
de asemenea susține un argument--with-openssl-dir=DIR
, care poate fi utilizat pentru a specifica manual calea de căutare (doar pentru OpenSSL).
Etapa finală a asamblării, make install, va raporta unde a fost instalată mongodb.so, similar cu:
Installing shared extensions: /usr/lib/php/extensions/debug-non-zts-20151012/
Asigurați-vă că opțiunea extension_dir din php.ini indică către directorul unde mongodb.so a fost instalat. Puteți afla valoarea opțiunii cu următoarea comandă:
$ php -i | grep extension_dir extension_dir => /usr/lib/php/extensions/debug-non-zts-20151012 => /usr/lib/php/extensions/debug-non-zts-20151012
Dacă directoarele diferă schimbați extension_dir din php.ini sau deplasați manual mongodb.so în directorul corect.
În final, adăugați următoarea linie în fișierul php.ini:
extension=mongodb.so
You think this is to complicated? You use Ubuntu 14 or 16? use this:
sudo apt-get install php-mongodb
This installs everything you need to use MongoDB inside PHP.
Don't stop using MongoDB, is the best that will happen to you.
You're Welcome.
a) If your git version is not recent enough, as can happen e.g. on Ubuntu 12.04 LTS, git submodule --init won't exist
In that case use:
git submodule init
git submodule update
b) make install does not create a mongodb.conf configuration file to support the debian/ubuntu PHP versions phpenmod/phpdismod commands. To have them work:
- do not add the extension=mongodb.so line to php.ini
- add it to a mongodb.ini file in the PHP mods-available directory
- the commands will then work for this extension
c) if you have multiple versions of PHP on a system such as b), the phpenmod/phpdismod commands may fail if the extension is not built for the default PHP CLI version. To have it be enabled for a specific version, use the -v argument, like
phpenmod -v php7.1 mongodb
After installing mongodb, in terminal there are couple of error ex.
PHP Warning: PHP Startup: Unable to load dynamic library 'mongodb.so' (tried: C:\xampp\php\ext\mongodb.so (The specified module could not be found.), C:\xampp\php\ext\php_mongodb.so.dll (The specified module could not be found.)) in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library 'mongodb.so' (tried: C:\xampp\php\ext\mongodb.so (The specified module could not be found.), C:\xampp\php\ext\php_mongodb.so.dll (The specified module could not be found.)) in Unknown on line 0
https://prnt.sc/ubr5mq
Solution:
1. If you include mongodb extension in php.ini file first remove that
2. Goto your php path inside Xampp and create an file called mongodb.ini and pest this below line, see ss - https://prnt.sc/ubr7ii
code extension=mongodb.so
This solution works in windows 10, php 7.4 version