Laravel与MongoDB的驱动程序


Laravel with drivers of MongoDB

我是第一次在 laravel 中使用 MongoDB,我想在 MongoDB 中使用 laravel 4.2,但我有这个问题:

> C:''xampp''htdocs''laravel-mongo>composer require jenssegers/mongodb使用 ^3.0 版本 jenssegers/mongodb./composer.json 已更新加载包含包信息的作曲家存储库更新依赖项(包括需求开发)您的要求无法解析为一组可安装的软件包。  问题1    - Jenssegers/MongoDB v3.0.0 需要 MongoDB/MongoDB ^1.0.0 -> MongoDB/MongoDB[1.0.0, 1.0.1] 满足。    - Jenssegers/MongoDB v3.0.1 需要 MongoDB/MongodB ^1.0.0 -> MongoDB[1.0.0, 1.0.1] 满足。    - Jenssegers/MongoDB v3.0.2 需要 MongoDB/MongoDB ^1.0.0 -> MongoDB[1.0.0, 1.0.1] 满足。    - mongodb/mongodb 1.0.1 需要 ext-mongodb ^1.1.0 ->请求的 PHP 扩展 mongodb 安装了错误的版本 (1.0.0)。    - mongodb/mongodb 1.0.0 需要 ext-mongodb ^1.1.0 ->请求的 PHP 扩展 mongodb 安装了错误的版本 (1.0.0)。    - Jenssegers/mongodb ^3.0 -> 的安装请求由 jenssegers/mongodb[v3.0.0, v3.0.1, v3.0.2] 满足。  若要启用扩展,请验证它们是否在以下.ini文件中启用:    - C:''xampp''php''php.ini  您还可以在终端中运行"php --ini"以查看PHP在CLI模式下使用哪些文件。安装失败,将 ./composer.json 恢复为其原始内容。

对于 Laravel 4.2,您需要 2.0.x 版本的软件包

作曲家要求Jenssegers/MongoDB ^2.0

当您未指定版本时,编辑器默认获取最新的稳定版本,当前恰好是 v3.0.2。

由于旧的mongo安装,这发生在我身上(对于Lumen 5)。

从 http://php.net/manual/en/class.mongoclient.php
: 警告:定义此类的此扩展已弃用。相反 应该使用 MongoDB 扩展。


按照后续步骤,我能够jenssegers/mongodb正常工作:

sudo apt-get install php5-dev
sudo pecl install mongodb

然后添加到/etc/php5/cli/php.ini或类似内容:

extension=mongodb.so

然后安装驱动程序

composer require jenssegers/mongodb

参考: http://haafiz.me/development/installing-mongodb-driver-mongoclient-for-php-on-ubuntu