>mongoDB的php扩展2015年的时候就换了版本. 我们一直用到现在了 /悲伤
## 前言
#### 关于mongoDB官方提供的php驱动
* mongo https://pecl.php.net/package/mongo
* mongodb https://pecl.php.net/package/mongodb
mongo扩展在2015年便被新扩展 mongodb所替代。
官方兼容性介绍: https://docs.mongodb.com/ecosystem/drivers/php/
#### 升级背景
php准备从之前使用的5.6版本, 升级到php7版本.
发现mongoDB官方不再维护mongo扩展 不支持php7. 所以要更换为 mongodb扩展
mongo和mongodb的结构完全不同,使用方式也大相径庭。
不过官方有个php适配包,可以让mongodb看上去和mongo使用体验近似:https://github.com/mongodb/mongo-php-library
#### 升级策略
* 方案1. mongodb扩展 本身是可以在 php5.6环境下使用的, 只需要将 内部php框架的 mongo使用改为 新的扩展。 所有业务修改下使用即可
* 方案2. 仅在php7配套的环境中使用新扩展, 内部php框架提供 php5.6 /php7 两个环境的不同mongo使用方式. 仅迁移php7的业务使用 新扩展
考虑之前很多老业务都对mongo的旧扩展提供的方法有深入的使用, 修改代码带来的 成本和bug风险较大。
随考虑使用方案2
* * * * *
* * * * *
#### MongoDB官方文档记录
* 社区开发的https://github.com/alcaeus/mongo-php-adapter 存在,虽然不是官方的 但值得推荐
* 官方开发的 https://github.com/mongodb/mongo-php-library, 如果您正在使用MongoDB开发PHP应用程序,则应考虑使用此库或另一个高级抽象,而不是单独使用扩展。
* 升级指南:https://docs.mongodb.com/php-library/master/upgrade/
* 官方库手册: https://docs.mongodb.com/php-library/master/