php - mongo-php-library 和 MongoDB 驱动程序有什么区别

标签 php mongodb

mongo-php-library 和 MongoDB 驱动有什么区别? 它们在性能和功能方面有何不同?有什么好处和坏处?

我们目前在生产中使用“mongo-php-library”,如下所示:

$connection = (new MongoDB\Client("mongodb://user:password@mongo:27017"));

$client = $connection->selectDatabase("the_database");

$collection_users = $client->selectCollection('users');

像这样连接到数据库有什么好处或坏处吗?

最佳答案

mongo-php-library (用 PHP 编写)是对较低级别 MongoDB PHP driver (mongodb extension) 的高级抽象。 . MongoDB 驱动程序 mongodb 是用 C 编写的,只为核心驱动程序功能提供了一个最小的 API:命令、查询、写入、连接管理和 BSON 序列化。因此 PHP 开发人员将需要 mongo-php-library 来提供易于使用的高级 API,例如查询构建器、单独的命令辅助方法和 GridFS。

mongo-php-library 由 MongoDB 正式支持。它的性能和功能没有问题或担忧,因为它是唯一的选择,除非您决定自己开发一个定制/优化的库,否则最终可能会重新发明相同的轮子。

以前 the legacy MongoDB PHP driver而是提供高级 API,但 MongoDB 决定用当前的 mongodb 扩展取代它,因此旧版驱动程序仅支持 PHP 5.6 和 MongoDB 3.0。原因未知,但我们猜测 MongoDB 想要将 MongoDB PHP 驱动程序保持在低级别,并在此基础上开发了一个 PHP 库,以方便他们对 PHP 7 和后续 PHP 升级的支持。

关于php - mongo-php-library 和 MongoDB 驱动程序有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52794743/

相关文章:

python - 无法使用python连接AWS EC2上的MongoDb

javascript - Nodejs/mongodb 代码中的异步问题

java - Mongo hadoop mapreduce 显示错误

node.js - 如何在快速 route 显示图像

php - JavaScript 验证数据库

signals - 处理 PHP ^C CLI 脚本

php - 无法在 Codeigniter 中定位指定类 : Session. php

javascript - 从 MongoDB 中删除匹配 "this text"的条目

php - 谷歌广告 API

php - 如何在laravel eloquent中查询多个关系