2016-05-02 18 views
9

ben [1.0.5] besteci üzerinde doktrin/mongodb-ODM yüklemeye çalıştığınızda başarısız ama bana zatenphp70-Mongo yüklemek doktrin/mongodb-ODM

php -i | grep mongo 

/usr/local/etc/php/7.0/conf.d/ext-mongodb.ini 
mongodb 
mongodb support => enabled 
mongodb version => 1.1.6 
mongodb stability => stable 
libmongoc version => 1.3.5 
mongodb.debug => no value => no value 
yüklendikten

Problem 1 
    - doctrine/mongodb 1.3.0 requires ext-mongo ^1.5 -> the requested PHP extension mongo is missing from your system. 
    - doctrine/mongodb 1.2.2 requires ext-mongo ^1.2.12 -> the requested PHP extension mongo is missing from your system. 
    - doctrine/mongodb 1.2.1 requires ext-mongo ^1.2.12 -> the requested PHP extension mongo is missing from your system. 
    - doctrine/mongodb 1.2.0 requires ext-mongo ^1.2.12 -> the requested PHP extension mongo is missing from your system. 
    - doctrine/mongodb-odm 1.0.5 requires doctrine/mongodb ~1.2 -> satisfiable by doctrine/mongodb[1.2.0, 1.2.1, 1.2.2, 1.3.0]. 
    - Installation request for doctrine/mongodb-odm ~1.0.5 -> satisfiable by doctrine/mongodb-odm[1.0.5]. 

Mongo uzantısını düşer

Bu durumda ne yanlış gitti?

cevap

28

PHP7'de, @xaben tarafından belirtilen mongodb uzantısına sahipsiniz. o mongodb desteklemek kadar doktrin ile kullanabilirsiniz ancak ek kütüphaneye https://github.com/alcaeus/mongo-php-adapter

yükleyerek İlk besteci aracılığıyla yükleyin:

composer require alcaeus/mongo-php-adapter 

ve üstü doktrin yükleyin. Benim durumumda çok iyi çalışıyor.

+1

Teşekkürler, benim durumumda çok iyi çalışıyor! –

+1

Bu çözüm, resmi sürüm notlarında da önerilir. Http://www.doctrine-project.org/2016/02/16/doctrine-mongodb-odm-release-1.0.5.html – edigu

+0

Symfony 3.2 ile PHP 7.1 üzerinde güzel bir şekilde çalışır ve Doctrine ODM 1.1 –

5

PHP MongoDB için 2 uzantısı vardır:

  1. http://php.net/manual/en/book.mongo.php
  2. bulunan eski bir "doktrin/MongoDB-ODM" durumunda geçerli bir http://php.net/manual/en/set.mongodb.php

bulmak bekliyor eski bir "mongo" ama sizin kurduğunuz şey daha yeni bir "mongodb".

Eski uzantıyı kullanmak için php'yi kullanmanız gerekir php < = 5.6, php 7 için sadece mongodb kullanılabilir.

+0

Geri bildiriminiz için teşekkür ederiz. Yeniden yükleme talimatını takip ettim ama yine de aynı çıktı. – deroccha

+0

OMG, ben büyük zaman çıldırmak üzereydim, hayatımı kurtardın! –

0

ben sorun vardı, ama o kadar, udpate gerek yükleyici MongoDB sonra php 5.6 ve mysql ile 7.1

sorun composer.json Symfony 3.1 yükleyip yapılandırma:

"config": { 
    "platform": {"php": "5.6"} 
} 

Değişimi:

"config": { 
    "platform": {"php": "7.1"} 
} 
İlgili konular