web-dev-qa-db-ja.com

古いバージョンのpeclパッケージをインストールする方法

私はこのコードを持っています

    $passengerId = new \MongoId(oPassenger->getId());

    return $this->createQueryBuilder('Device')
        ->update()
        ->multiple(true)
        ->field('activated')->set(false)
        ->field('passenger')->unsetField()->equals($passengerId)
        ->field('_id')->notEqual($deviceId)
        ->getQuery()
        ->execute();

私の開発サーバーでは問題なく動作しますが、ローカルマシンではクラッシュします。

devでpecl listを実行すると、

APC     3.1.13  beta
amqp    1.2.0   stable
intl    3.0.0   stable
mongo   1.3.7   stable

地元の返品について:

mongo   1.5.6   stable
xdebug  2.2.5   stable

私のマシンのクラッシュメッセージは

"name":"MongoException","message":"Invalid object ID"},"code":500}

Mongoのローカルバージョンをダウングレードしてみましたが、peclの不十分なドキュメントではそれを理解できませんでした。たとえば私はこれを試しました:

Sudo pecl upgrade -f -c channel://pecl.php.net/mongo-1.3.7

しかし、私はすべてのチャンネル順列に対してchannel does not existを取得し続けます。

mongod --versionもローカルで実行するとdbバージョンv2.6.が返され、devではdbバージョンv2.4.が返されます

アイデア?

30
abbood

ダウングレードするには、これを試すことができます:

pecl install mongo-1.3.7


次に、peclリストは、それが機能したことを示します。

52
Icu