2016-10-17 6 views
2

PHP 5.6からmongodbを実行したい。私はhttps://github.com/mongodb/mongo-php-libraryからダウンロードしました。私はコマンドcomposer require "mongodb/mongodb=^1.0.0"を実行し、ファイルzipはどうですか?それをインストールする簡単な方法はありますか?WindowsにphpMongoドライバをインストールする

私はこのコード

<?php 
require 'vendor/autoload.php'; 
$connection = new MongoDB(); 

?> 

とエラーを取得を実行します。

Fatal error: Class 'MongoDB' not found in C:\wamp64\www\

new MongoDB\Client("mongodb://localhost:27017"); 

が正常に動作しますが、ファイルがでている場合は、文書$collection->insert($document);を保存するためにエラーにinsert method is not found

+0

これは不要ですあなた自身でダウンロードしてください。作曲者はあなたが必要とするバージョンをダウンロードし、それをあなたのためにインストールします。つまり、ファイルをベンダーマップに置き、プロジェクトに含める必要があるautoload.phpを生成します。 – 11mb

+0

私はそれを追加しました。しかし、まだエラーを出す。 udated質問を参照してください。 – Amar

+0

私はちょうど答えられているものの中で全く新しい質問をするのは公正だとは思っていません。無視してください:あなたはecho get_class($ collection)をすれば何を得ますか? – 11mb

答えて

3

を与えますベンダーはコンポーザーを経由してインストールをマップしますprobablよかった。私は今問題は、あなたが存在しないクラスのインスタンスを作成したいということだと思います。 MongoDBはクラスではなく名前空間ではないのですか?

のMongoDBのドキュメントから:

$database = (new MongoDB\Client)->selectDatabase('db_name'); 

名前空間上のドキュメントを参照してください:あなたはドキュメントに従ってinsertOne()使用する必要があります挿入するためのhttp://php.net/manual/en/language.namespaces.php

-edit-

http://mongodb.github.io/mongo-php-library/classes/collection/#insertone

function insertOne($document, array $options = []): MongoDB\InsertOneResult 
+0

'new MongoDB \ Client'はうまく動作しますが、ドキュメント' $ collection-> insert($ document);を保存しています; 'insert methidが見つかりません 'というエラーを返します。 – Amar

+0

Nice!あなたが何か働いていると聞いてよかった!私はこれが新しい質問だろうと思う:)。私はMongoDbの経験がありません。 – 11mb

+0

私の回答が更新されました。たぶんあなたはphp.netのドキュメントを使用していますか? githubからのドキュメンテーションではありませんか? – 11mb

関連する問題