需要使用 MongoDB.so 扩展的 Symfony 2 MongoDB 包
Posted
技术标签:
【中文标题】需要使用 MongoDB.so 扩展的 Symfony 2 MongoDB 包【英文标题】:Need Symfony 2 MongoDB bundle which uses MongoDB.so extention 【发布时间】:2016-05-21 18:49:27 【问题描述】:我在生产中遇到问题,它有 mongodb.so 扩展,我们的 Symfony 2 ODM 包正在使用 mongo.so。
正如以下参考链接中提到的那样,不推荐使用 mongo.so,因此我们不想进一步使用 mongo.so。
http://php.net/manual/en/mongo.installation.php
现在我们正在使用以下包,这些包使用的是 mongo.so,不支持 mongodb.so。
"doctrine/mongodb-odm": "~1.0",
"doctrine/mongodb-odm-bundle": "~3.0"
请建议我使用 MongoDB.so 扩展的正确 Doctirine ODM 包。
【问题讨论】:
【参考方案1】:ODM 本身在 2.0 发布之前不会支持新的驱动程序,目前您可以使用在 ext-mongodb 和 mongo-php-library 之上实现 ext-mongo 的 API 的mongo-php-adapter。如需更多信息,您可能希望查看ODM's last release blogpost。
【讨论】:
【参考方案2】:您需要安装高级驱动适配器,例如 alcaeus/mongo-php-adapter。 为了在 MongoDB 中使用 Symfony,您需要:
Symfony 3:显然 :-) ; Symfony Doctrine MongoDB Bundle (doctrine/mongodb-odm-bundle):这个包将 Doctrine2 MongoDB Object Document Mapper (ODM) 库集成到 Symfony 中; Doctrine MongoDB Object Document Mapper (doctrine/mongodb-odm):为 MongoDB 提供 PHP 对象映射功能的库; MongoDB Adapter (alcaeus/mongo-php-adapter):提供建立在mongo-php-library之上的ext-mongo API,兼容PHP 7; MongoDB 驱动程序库 (mongodb/mongodb):围绕 PHP 的低级驱动程序提供高级抽象; MongoDB PHP 扩展:PHP 和 HHVM 的低级驱动程序扩展。请注意 MongoDB 驱动程序。不要使用旧版 MongoDB 驱动程序 (http://php.net/manual/en/book.mongo.php)。您可以按照以下说明操作:How to install Symfony3 with MongoDB (and PHP7)
【讨论】:
以上是关于需要使用 MongoDB.so 扩展的 Symfony 2 MongoDB 包的主要内容,如果未能解决你的问题,请参考以下文章
OS X Sierra + XAMPP 7.1.9-0 + 扩展 mongodb.so 未启动