2016-03-20 3 views
0

Я новичок, используя MongoDB в Laravel, я хочу использовать Laravel 4.2 с MongoDB, но у меня есть эта проблема:Laravel с водителями MongoDB

 
> C:\xampp\htdocs\laravel-mongo>composer require jenssegers/mongodb 
Using version ^3.0 for jenssegers/mongodb 

./composer.json has been updated 
Loading composer repositories with package information 
Updating dependencies (including require-dev) 
Your requirements could not be resolved to an installable set of packages. 

    Problem 1 
    - jenssegers/mongodb v3.0.0 requires mongodb/mongodb ^1.0.0 -> satisfiable by mongodb/mongodb[1.0.0, 1.0.1]. 

    - jenssegers/mongodb v3.0.1 requires mongodb/mongodb ^1.0.0 -> satisfiable by mongodb/mongodb[1.0.0, 1.0.1]. 

    - jenssegers/mongodb v3.0.2 requires mongodb/mongodb ^1.0.0 -> satisfiable by mongodb/mongodb[1.0.0, 1.0.1]. 

    - mongodb/mongodb 1.0.1 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb has the wrong version (1.0.0) installed. 

    - mongodb/mongodb 1.0.0 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb has the wrong version (1.0.0) installed. 

    - Installation request for jenssegers/mongodb ^3.0 -> satisfiable by jenssegers/mongodb[v3.0.0, v3.0.1, v3.0.2]. 

    To enable extensions, verify that they are enabled in those .ini files: 
    - C:\xampp\php\php.ini 
    You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode. 

Installation failed, reverting ./composer.json to its original content.

ответ

0

Для Laravel 4.2 вам потребуется 2.0.x version пакета

 
composer require jenssegers/mongodb ^2.0 

Если вы не укажете, что композитор версии захватывает последнюю стабильную версию по умолчанию, которая в настоящее время является v3.0.2.

+0

Спасибо! его работа: D, очень спасибо – Carluis

1

Это случилось со мной (для 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 

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

+1

Обновленная версия статьи, упомянутая в ссылке: http://haafiz.me/uncategorized/installing-mongodb-driver-with-mongodb-extension-on-ubuntu-and-other-linux-distro который предназначен для нового расширения MongoDB. – Hafiz

Смежные вопросы