需要ext-mongodb ^ 1.5.0 symfony

时间:2018-07-10 15:11:54

标签: php mongodb symfony

我安装了ext-mongodb

  

php --ri mongodb | grep版本

MongoDB extension version => 1.5.1 
libbson bundled version => 1.11.0
libmongoc bundled version => 1.11.0

在安装composer时我遇到了composer的问题

- mongodb/mongodb 1.4.0 requires ext-mongodb ^1.5.0 -> the requested PHP extension mongodb is missing from your system.
- mongodb/mongodb 1.3.2 requires ext-mongodb ^1.4.0 -> the requested PHP extension mongodb is missing from your system.
- mongodb/mongodb 1.3.1 requires ext-mongodb ^1.4.0 -> the requested PHP extension mongodb is missing from your system.
- mongodb/mongodb 1.3.0 requires ext-mongodb ^1.4.0 -> the requested PHP extension mongodb is missing from your system.
- mongodb/mongodb 1.4.0 requires ext-mongodb ^1.5.0 -> the requested PHP extension mongodb is missing from your system.

我的php信息(更多详细信息)

mongodb
MongoDB support enabled
MongoDB extension version   1.5.1
MongoDB extension stability stable
libbson bundled version 1.11.0
libmongoc bundled version   1.11.0
libmongoc SSL   enabled
libmongoc SSL library   Secure Transport
libmongoc crypto    enabled
libmongoc crypto library    Common Crypto
libmongoc crypto system profile disabled
libmongoc SASL  enabled
libmongoc ICU   disabled
libmongoc compression   enabled
libmongoc compression snappy    disabled
libmongoc compression zlib  enabled

如果我尝试使用composer安装mongodb

composer require mongodb/mongodb我遇到了错误

如果我使用(并且我不想使用此方法)

composer install --ignore-platform-reqs

我可以看到

    "mongodb/mongodb": "^1.3",

但是以这种方式,我无法使用某些功能,例如aggregateCursor

Attempted to call an undefined method named "aggregateCursor" of class "MongoDB\Collection"

或者我不能使用 $ m = new \ MongoClient();

  

试图从全局名称空间中加载类“ MongoClient”。

要连接到mongoDb,我必须使用

  

新\ MongoDB \ Client

我使用Symfony,但我认为这无关紧要

  

Composer版本1.6.5 2018-05-04 11:44:5

     

PHP 7.2.1(CLI)(建立:2018年1月15日12:20:50)(NTS)   版权所有(c)1997-2017 The PHP Group

2 个答案:

答案 0 :(得分:3)

请按照以下步骤操作。

sudo apt-get install php7.2-dev
sudo apt-get install libcurl4-openssl-dev pkg-config libssl-dev libsslcommon2-dev
sudo apt-get install php-pear
sudo pecl install mongodb

转到php.ini文件

 extension=mongodb.so

答案 1 :(得分:0)

对于基于Debian的操作系统,请使用以下命令

  sudo apt-get install php-mongodb