Je suis débutant pour ça. J'essaye d'installer le pilote mongodb sur php.
Platform: Windows 8.1 64bit.
PHP 5.5.9
Apache/2.4.7
Suivez les instructions ici: http://php.net/manual/en/mongo.installation.php#mongo.installation.windows
J'ai essayé tous les fichiers php_mongo.dll avec VC11 et les ai placés dans le dossier php/ext. et ajouté extension=php_mongo.dll
dans le fichier php.ini, mais lorsque j'ai essayé de démarrer Apache dans le contrôleur xampp, une erreur s'est produite.
Php Startup: Unable to load dynamic library
'C:\xampp\php\ext\php_mongo.dll' -%1 is not a valid Win32 application.
J'ai déjà vérifié la version de mon compilateur VC dans phpinfo () et il est indiqué qu'il y a MSVC11
avec architecture: x86
.
ce serait bien si quelqu'un peut m'aider . Merci. l'apprécie.
Assurez-vous de télécharger le fichier .DLL correct pour votre installation php. Il est fort probable que vous utilisiez Apache x86, alors téléchargez un fichier php_mongo.dll x86. De même, si vous exécutez PHP en tant que module Apache, assurez-vous de choisir celui qui est thread-safe (ts). Choisissez aussi ce type de dll qui correspond à la version de php que vous utilisez. Les versions doivent correspondre, sinon vous obtiendrez une erreur de démarrage php. Trouvez ces DLL Mongo ici . Je l'ai fait alors j'ai une erreur libsasl.dll introuvable. J'ai simplement copié le libsasl.dll trouvé dans mon répertoire d'installation php dans le répertoire d'installation Apache (où httpd.exe est trouvé). Puis j'ai redémarré mon Apache. Et ça a marché!
Pour ceux qui recherchent cela en 2017, le paquet PECL a été mis à jour et se trouve maintenant à http://pecl.php.net/package/mongodb/1.2.9/windows
et utilise:
extension=php_mongodb.dll
au lieu de:
extension=php_mongo.dll
Si vous rencontrez toujours des problèmes après avoir effectué ce qui précède, essayez plutôt les pilotes de versions antérieures.
C’est ce qui a fonctionné pour moi sous XAMPP/PHP 5.5 sous Windows 8.
Les anciens pilotes peuvent être trouvés ici: https://s3.amazonaws.com/drivers.mongodb.org/php/index.html
Les nouveaux pilotes peuvent être trouvés ici: http://pecl.php.net/package/mongo/1.5.5/windows
Vous pouvez également visiter: https://serverfault.com/questions/563867/mongodb-unable-to-load-driver-on-php
Copiez C:\xampp\php\libsasl.dll
dans C:\xampp\Apache\bin\
, redémarrez Apache
et profitez-en.
Ceci est normalement dû au fait que nous utilisons un fichier 64 bits DLL pris en charge. Mais l'architecture wamp/xampp pourrait être 32 bits. Nous devons utiliser l’architecture wamp/xampp et non l’architecture Windows. Essayez donc de trouver la version pertinente du fichier DLL dans l’architecture wamp/xampp. La solution dans le lien ci-dessous a fonctionné comme un charme pour moi,
Ce lien vous aide à trouver l’architecture wamp/xampp, https://stackoverflow.com/a/22454865/4874281
Après avoir suivi toutes les étapes mentionnées dans les commentaires précédents, xampp risque de ne pas pouvoir charger le fichier ".dll". Assurez-vous simplement d’ajouter le chemin du dossier du fichier ".dll" à la variable d’environnement en tant que chemin de la variable système.
Je faisais face au même problème, puis après avoir ajouté le chemin du dossier du fichier ".dll" à la variable d'environnement en tant que chemin de variable système, cela a fonctionné. Il est alors capable de trouver le fichier.
À la fin, c’était la seule étape qui consistait à arrêter xampp pour charger le fichier ".dll", même s’il était présent dans ce dossier. Souvent, les gens manquent cette étape car il n’est pas indiqué clairement.