Я для этого начинаю. Я пытаюсь установить драйвер mongodb на php.
Platform: Windows 8.1 64bit. PHP 5.5.9 Apache/2.4.7
Следуя инструкциям здесь: http://php.net/manual/en/mongo.installation.php#mongo.installation.windows
Я пробовал весь файл php_mongo.dll с VC11 и помещал в папку php / ext. и добавлено extension=php_mongo.dll
в файле php.ini, но когда я попытался запустить apache в контроллере xampp, я получил ошибку.
Php Startup: Unable to load dynamic library 'C:\xampp\php\ext\php_mongo.dll' -%1 is not a valid Win32 application.
Я уже проверял версию компилятора VC внутри phpinfo (), и там указано MSVC11
с architecture: x86
.
было бы хорошо, если кто-то может мне помочь. Благодарю. ценить это.
Убедитесь, что вы загрузили правильный .DLL для вашей установки php. Хороший шанс, что вы используете apache x86, поэтому загрузите x86 php_mongo.dll. Также, если вы используете PHP как модуль Apache, убедитесь, что вы выбрали безопасный поток (ts). Также выберите этот тип dll, который соответствует версии php, в которой вы работаете. Версии должны совпадать, иначе вы получите ошибку запуска php. Найдите здесь Монголы DLL. Я сделал это, тогда я получил ошибку libsasl.dll не найден. Я просто скопировал libsasl.dll, найденный в моем каталоге установки php, в каталог установки apache (где найден httpd.exe). Затем я перезапустил свой apache. И это сработало!
Если у вас все еще есть проблемы после выполнения вышеизложенного, попробуйте вместо этого использовать более старые версии драйверов.
Это то, что сработало для меня для моего XAMPP / PHP 5.5 в Windows 8.
Более старые драйверы можно найти здесь: https://s3.amazonaws.com/drivers.mongodb.org/php/index.html
Новые драйверы можно найти здесь: http://pecl.php.net/package/mongo/1.5.5/windows
Вы также можете посетить: https://serverfault.com/questions/563867/mongodb-unable-to-load-driver-on-php
Скопируйте C:\xampp\php\libsasl.dll
в C:\xampp\apache\bin\
, перезапустите Apache
и наслаждайтесь.
Для любого пользователя, отправляющего эту игру в 2017 году, пакет PECL был обновлен и теперь находится по адресу http://pecl.php.net/package/mongodb/1.2.9/windows
и использовать:
extension=php_mongodb.dll
вместо:
extension=php_mongo.dll
Обычно это происходит потому, что мы используем 64-битную файловую систему с 64-битным файлом DLL. Но архитектура wamp / xampp может быть 32 бит. Нам нужно использовать на основе архитектуры wamp / xampp, а не архитектуру Windows. Итак, попробуйте найти соответствующую версию DLL-файла в архитектуре wamp / xampp. Решение в приведенной ниже ссылке работало как прелесть для меня,
Эта ссылка поможет вам найти архитектуру wamp / xampp, https://stackoverflow.com/a/22454865/4874281
После выполнения всех шагов, указанных в предыдущих комментариях, xampp может не загрузить файл «.dll». Просто убедитесь, что путь к папке файла «.dll» добавлен в переменную среды как путь к системной переменной.
Я столкнулся с такой же проблемой, а затем добавив путь к папке файла «.dll» в переменную среды как путь к системной переменной, она сработала. Затем он может найти файл.
В конце это был единственный шаг, который останавливал xampp для загрузки файла «.dll», хотя он присутствовал в этой папке. Часто люди пропускают этот шаг, поскольку это не тот, где четко указано.