繁体   English   中英

如何在Ubuntu 16.04 LTS中安装Mongodb PHP扩展

[英]How to install Mongodb PHP extension in Ubuntu 16.04 LTS

我正在运行Ubuntu 16.04 LTS,我想使用Mongodb和PHP。 为此,我认为sudo apt-get install php5-mongo (足够Ubuntu 14.04 LTS)就够了,但我错了。 我收到这样的错误E: Unable to locate package php5-mongo

我刚刚升级到Ubuntu 16.04 LTS并希望将mongodbPHP一起使用。 运行PHP版本是PHP Version 7.0.4-7ubuntu2

那么我该怎么做才能解决这个问题呢?

我担心你现在有点不走运。 目前的情况是有两个MongoDB扩展:

  • “php-mongo”,这是“旧的”; 此扩展最多支持PHP 5. *,但不支持PHP7。 只计划错误修复;
  • “php-mongodb”,这是“新”的; 此扩展支持PHP5以及PHP7;

现在的问题是,新的内容与旧版本不兼容,因为它们的内部完全不同。 不幸的是,使用新语法的示例很少使用,因为绝大多数Mongo相关代码是使用旧扩展编写的。

就目前而言,如果您已经转移到PHP7,您唯一的选择是使用“新”扩展,这反过来意味着您之前的代码将停止工作。

我已经看到有几次尝试创建一个polyfill来实现这两种可能的迁移(例如: https//github.com/alcaeus/mongo-php-adapter ),但是因为我自己没有尝试过,所以我不能告诉它有多好用。

似乎这个库http://mongodb.github.io/mongo-php-library/应该弥补差距 - 在给它一个镜头之后我相信它应该覆盖大多数“旧”功能而不会更新代码太多。

如果你们中的一些人仍然想要使用一个简单的包装器到新库中,如下所示: https//stackoverflow.com/a/48086676/2569789我为此目的维护一个,你可以在这里找到它: https://github.com/ThomasSquall/PHP7MongoDriver

它涵盖了今天的几个方法,但我会不断改进它,我希望也能贡献:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM