我正在尝试将我的 laravel 项目连接到 mongodb。我的php版本是8.1。我从 text 下载了 php 8.1 的 threadsafe x64 并将 dll 文件粘贴到 xampp 的 php 文件夹中的 ext 文件夹中。并通过以下方式激活 php.ini 中的模块
extension=mongodb
当尝试检查 mongodb 扩展是否被 php --ini
激活时,它会导致
PHP Warning: PHP Startup: Unable to load dynamic library 'mongodb' (tried: ext\mongodb (The specified module could not be found), ext\php_mongodb.dll (The specified module could not be found)) in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library 'mongodb' (tried: ext\mongodb (The specified module could not be found), ext\php_mongodb.dll (The specified module could not be found)) in Unknown on line 0
Configuration File (php.ini) Path
该文件在 ext 文件夹中被命名为 php_mongodb.dll 但它仍然不接受它。 我检查了 http://localhost/dashboard/phpinfo.php 以查看它是否已启用并且 mongodb 扩展是否显示在其中以及所有可用选项。
我尝试将 php.ini 从
extension=mongodb
更改为 extension=php_mongodb.dll
,然后重新启动 xampp。但错误是
PHP Warning: PHP Startup: Unable to load dynamic library 'php_mongodb.dll' (tried: ext\php_mongodb.dll (The specified module could not be found), ext\php_php_mongodb.dll.dll (The specified module could not be found)) in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library 'php_mongodb.dll' (tried: ext\php_mongodb.dll (The specified module could not be found), ext\php_php_mongodb.dll.dll (The specified module could not be found)) in Unknown on line 0
Configuration File (php.ini) Path:
Loaded Configuration File: D:\xampp\php81\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
所以 php.ini 中前面的 php 或 last.dll 不是问题。除了像 mysql 这样的其他扩展在其中启用,就像
extension=pdo_mysql
一样,没有 php_and .dll。我做错了什么?
如果 php 作为独立安装,可能会出现某些东西试图从您看到的路径访问扩展文件夹的情况。安装相同版本的 php 并将 .dll 放入该文件夹以及 xampp 的 php 文件夹中可能会解决问题。