2016-12-25 7 views
0

古いドライバのexecuteコマンドの "新しい" MongoDBドライバ/ライブラリに相当するものがある場合、見つけられません。この場合、私はちょうどMath.random()を実行したいと思います、そして、どのコマンドが同等であるか把握できないようです。私はhttp://php.net/manual/en/mongodb.execute.phpを見ましたが、私はそれをどのように使用するか把握できません。それはMongoDB \ Clientクラスで実行されるはずですか?MongoのPHP MongoDBドライバが実行されます

+0

ためManagerクラスのexecuteCommand方法。共有するコードはありますか? –

+0

MongoClientのインスタンスで実行しようとしましたが、うまく動作しませんでした。私が持っているすべてのコードは、MongoClientのインスタンスを作成し、次に '$ mongo-> execute( 'Math.random()')'を試していました。 – RhoVisions

+0

'$ db-> execute(' Math.random() ')' –

答えて

0

これはどのように行うことができます。

<?php 
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017"); 
$command = new MongoDB\Driver\Command(array('eval' => "Math.random()")); 
$cursor = $manager->executeCommand('testDb', $command); 

print_r($cursor->toArray()); 
?> 

ここで出力例を示します。

Array 
(
    [0] => stdClass Object 
     (
      [retval] => 0.66910735880473 
      [ok] => 1 
     ) 

) 

チェックアウト、私はそれがMongoClient `$のdb`上で実行されると思うの詳細

+0

ありがとう、これは多くを明確にするのに役立ちます! – RhoVisions

+0

ようこそ@RhoVisions!これが役に立つと分かった場合は、他の人が参考になるように受け入れたものとしてマークしてください。 – dikesh

関連する問題