php - 如何连接php7和mongoDB

标签 php mongodb php-7

我正在尝试将 PHP 7 与 mongoDB 连接,我按照 page 使用 pecl 安装了"new"MongoDB 驱动程序指示。我可以从 phpInfo() 输出中看到 MongoDB 版本 1.1.8,但我不知道如何从 PHP 代码启动连接 :p 。以下代码包括我的连接尝试(即使使用老式方式也尝试连接)

// new fashion way
$connection = new MongoDB\Driver\Client();

// or by using old fashion way
$conn = new MongoClient();

// random try :p
$randConn = new MongoDB\Client();

在这两种情况下,我都没有定义类异常。 请让我知道我遗漏了什么以及我的错误在哪里,如果可能的话,请提供更容易理解的示例;)。

PS:使用的操作系统是 ubuntu 14.04 LTS。


提前致谢。

最佳答案

您所指的页面是 MongoDB 的低级 PHP 驱动程序。 API 与 HHVM driver for MongoDB 相同.两者的文档是相同的,可以在 http://docs.php.net/manual/en/set.mongodb.php 找到。

驱动程序被编写为与 MongoDB 通信的裸骨层,因此错过了许多便利功能。取而代之的是,这些方便的方法被拆分成一个用 PHP 编写的层,MongoDB Library .使用这个库应该是您与 MongoDB 交互的首选方式。

库需要安装Composer , PHP 的包管理器。另见 Get Composer: Installation on Linux/OSX

例如:

composer require "mongodb/mongodb=^1.0.0"

安装后,您可以尝试使用以下方式连接:

<?php
 require 'vendor/autoload.php';
 $collection = (new MongoDB\Client("mongodb://127.0.0.1:27017"))->dbname->coll;
?>

另见:

关于php - 如何连接php7和mongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38307415/

相关文章:

javascript - foreach循环只选择一个复选框

php - 在 PHP 中搜索 MySQL 表

angular - 连接为 Meteor 客户端的 Ionic UI 的简单示例?

php - utf8_encode() 和curl_init() 在 PHP7 上不起作用

php - 如何将base64图像解码保存到laravel中的公用文件夹

php - 根据 mysql 值回显数组值

php - 警告 : mysqli_query() expects at least 2 parameters, 1 在 C :\xampp\htdocs\couriermanagement\database. php 第 15 行给出

mongodb - 如何在 MongoDB 的项目数组中查找包含非空数组的文档

string - 将 UUID 转换为 String 以插入 mongodb

laravel - Laravel 4.2 和 5.2 是否支持 PHP 7?