2016-05-20 10 views
1

私はUbuntu 16.04を初めて使用しています。私はphp 7とmongoDB 2.6の接続をしたいと思います。私はかなりGoogleを見つけましたが、私は何かを正しく見つけることができませんでした。誰でも接続性設定を実行するためのステップ・バイ・ステップのプロセスを提供できますか?また、私はubuntuシステムについて多くのことを知らないので、これらのステップも説明してください。そして、もし私の英語が間違っていたら、すみません。mongoDBとphp接続ubuntu 16.04

答えて

2

私はあなたがここにhttps://docs.mongodb.com/ecosystem/drivers/php/ とPHP/php.iniでダウンロードCAND --- PHP のphp/extに/ドライバでデ・ドライバをインストールする - などの> 拡張子= php_mongodb

とPHP 7使用で何か

$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017"); 

$filter = []; 
$options = [ 
'projection' => ['_id' => 0], 
]; 

$query = new MongoDB\Driver\Query($filter, $options); 
$cursor = $manager->executeQuery('db.collection', $query); 
+0

でphp.iniファイルには、私が更新答えを –

2

私はubuntu 16.04でPHP 7.0を使用しています。私は接続の問題を解決するための詳細な情報を提供しています。 まず、mongodbを手動でインストールしてからmongodb-phpドライバをインストールしました。

1)mongo dbのインストール。システムが起動したとき、すなわち、自動的にMongoDBを開始し、適切にサービスとしてMongdbを起動するために

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 

$ echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list 

$ sudo apt-get update 

$ sudo apt-get install -y mongodb-org 

、次の手順に従います。次のコマンドを入力します

は、/ etc /にsystemdにファイルmongodb.serviceを作成します。コマンドを入力して、/システム/:

$ sudo nano /etc/systemd/system/mongodb.service 

その中に以下の内容を貼り付けます。

[Unit] 
Description=High-performance, schema-free document-oriented database 
After=network.target 

[Service] 
User=mongodb 
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf 

[Install] 
WantedBy=multi-user.target 
Mongoの-PHPのドライバをインストールする

$ sudo systemctl start mongodb 

$ sudo systemctl enable mongodb 

2):

次に、以下のコマンドを入力します。

$ sudo pecl install mongodb 

また、エラーが表示される場合がありますは、phpizeが見つかりません。 Phpizeは、ビルド環境を作成するためのコマンドです。このエラーは、pecl拡張のインストール時に表示される可能性があります。 phpizeコマンドが見つからないというこの問題を解決するには、ユーザーはphp5-devパッケージをインストールする必要があります。 、/etc/php/7.0/apache2ディレクトリにあるphp.iniファイルに次に

$ sudo apt-get install php7.0-dev 

のmongo DB拡張子を追加します:

$ sudo nano /etc/php/7.0/apache2/php.ini 

を追加、それがコマンドを入力しインストールするには ファイル内の次の行:

extension = mongodb.so;

(だけ知っているので、ファイルmongodb.soの正確な位置は/usr/lib/php/20151012/mongodb.soである。)

だから、モンゴのDBはそのドライバと一緒にインストールされています。

3)mongo-phpクラスが変更されました。ネットの利用可能なリソースのほとんどは、古いクラスを使用したソリューションを置き換えます。以下は、あなたが参照できるリンクされています

:データベースにデータを挿入するには

$mng = new MongoDB\Driver\Manager(); // Driver Object created 

:ここ

http://php.net/manual/en/set.mongodb.php

http://zetcode.com/db/mongodbphp/

は、基本的なデータベース操作のためのいくつかのコマンドです

$bulk = new MongoDB\Driver\BulkWrite; 

$doc = ["_id" => new MongoDB\BSON\ObjectID, "data" => $someData, "info" => $someInfo]; 

$bulk->insert($doc); 

$mng->executeBulkWrite('dbName.collectionName', $bulk); 

fe tchingデータ:

$query = new MongoDB\Driver\Query([]); 

$rows = $mng->executeQuery("dbName.collectionName", $query); 

foreach ($rows as $row) 
    { 
     echo "$row->data - $row->info\n"; 
    } 
+1

おかげで(/ apacheのphp.iniのか、CLI/php.iniの)拡張子= php_mongodbを追加する必要があります。私は "mongo.so"の代わりに "extension = mongodb.so"を使用しましたが。 "/ usr/lib/php/20151012 /"というフォルダがデフォルトの拡張フォルダであるため、明示的に指定する必要はありません。 – garyF

+0

ライブラリの名前が 'mongodb.so'になったので、更新のために – fillobotto

+0

Thanx @fillobottoを実行する必要があります。 –

関連する問題