类MongoDB \ Driver \ Manager'未找到

时间:2017-01-30 15:22:11

标签: php mongodb laravel-5 jenssegers-mongodb

我正在使用XAMPP。 已安装mongo版本3.4.1 如果我点击$ mongo命令我得到 -

MongoDB shell version v3.4.1
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.1

如果我点击$ php -i | grep mongo然后我得到 -

mongodb support => enabled
mongodb version => 1.2.2
mongodb stability => stable
libmongoc version => 1.5.0
mongodb.debug => no value => no value

我已经要求了     " jenssegers / mongodb":" ^ 3.1"在laravel版本5.1

我在database.php中使用mongo配置了laravel 还使用PHP artisan mitrate命令进行迁移,并在mongo中创建了表。

路由后,我添加了

DB::collection('collection_name')->get();

但我得到了 " Client.php第81行中的FatalThrowableError: Class' MongoDB \ Driver \ Manager'找不到"错误

有人可以帮我吗?我不知道发生了什么! 有没有像我从命令提示符安装mongo并且我正在使用XAMPP?。

2 个答案:

答案 0 :(得分:1)

比较CLI上的php -i和来自Web SAPI的phpinfo()之间的输出。特别是,比较"加载配置文件"每个SAPI加载的各种INI文件的值和路径。可能每个都使用不同的php.ini配置,并且仅为CLI环境加载扩展。

答案 1 :(得分:0)

检查您正在使用的php的默认版本。尝试在php页面中运行phpinfo()。您可以创建一个php文件并将其包含在文件中:<?php phpinfo(); ?> 如果您没有在加载的页面上看到Mongodb信息,那么它不会与当前运行的php版本通信。检查页面顶部的当前php版本。最新的php版本是php7.1。这就是mongodb用来运行的东西。 使用以下命令卸载较低版本的php:apt-get uninstall php7.0确保包含要删除的正确版本的php。 使用以下命令安装最新版本:apt-get install php7.1,(确保安装最新版本的php)*在编写本文档时当前版本为php7.1 务必在流浪盒中进行更改。 键入exit退出该框。这会让您开箱即用。 如果您收到此错误,请执行vagrant配置: 在IDE上打开vagrant homestead.rb文件并执行以下操作:搜索/etc/php/7.0/php-fpm.conf。用/etc/php/7.1/php-fpm.conf替换它 用php7.1替换所有的php7.0。 如果您使用的是sublime text IDE,请按CTRL + SHIFT + F搜索/etc/php/7.0/php-fpm.conf的出现位置,然后键入要搜索的值。 单击具有该事件的文件,并将7.1替换为7.1 保存所做的所有更改。 回到你的git bash。运行sh init.sh以使更改生效。键入yes以覆盖当前的homestead.yaml。 做一个流浪汉开始盒子。 Vagrant provision用于在文件上运行任何已配置的配置文件