php - 无法使用 Composer 安装 PHP 扩展 mongo

标签 php mongodb macos composer-php

如何在 Mac 机器上使用 Composer 安装 PHP 扩展 Mongo?我使用以下命令通过 Composer 安装 PHP 扩展。

composer install --prefer-source

我遇到了以下异常。

vagrant@vagrant:/var/www$ composer install --prefer-source
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for doctrine/mongodb 1.4.x-dev -> satisfiable by doctrine/mongodb[1.4.x-dev].
    - doctrine/mongodb 1.4.x-dev requires ext-mongo ^1.5 -> the requested PHP extension mongo is missing from your system.
  Problem 2
    - Installation request for doctrine/mongodb dev-master -> satisfiable by doctrine/mongodb[dev-master].
    - doctrine/mongodb dev-master requires ext-mongo ^1.5 -> the requested PHP extension mongo is missing from your system.
  Problem 3
    - doctrine/mongodb 1.4.x-dev requires ext-mongo ^1.5 -> the requested PHP extension mongo is missing from your system.
    - doctrine/mongodb-odm dev-master requires doctrine/mongodb ~1.3 -> satisfiable by doctrine/mongodb[1.4.x-dev].
    - Installation request for doctrine/mongodb-odm dev-master -> satisfiable by doctrine/mongodb-odm[dev-master].

  To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php5/cli/php.ini
    - /etc/php5/cli/conf.d/05-opcache.ini
    - /etc/php5/cli/conf.d/10-pdo.ini
    - /etc/php5/cli/conf.d/20-curl.ini
    - /etc/php5/cli/conf.d/20-json.ini
    - /etc/php5/cli/conf.d/20-readline.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

注意:

我已经在mac机器上安装了MongoDB,安装的版本是

Shyleen:~ shyleenrodrigues$ mongo --version
MongoDB shell version v3.4.6

最佳答案

doctrine/mongodb 1.4.x-dev requires ext-mongo ^1.5 -> the requested PHP extension mongo is missing from your system.

好像没有安装php mongodb扩展。所以请参阅mongodb documentation php driver .

您只需通过pecl安装此扩展即可,如果安装了 php-dev 软件包 - 取决于您的 php 版本。

sudo apt-get install php7.0-dev // for example on ubuntu linux!!
sudo pecl install mongodb

重新启动 php 并重新运行 Composer 并检查其输出。

好吧,在 Mac 上似乎有点不同,你可以阅读 here (12.).

关于php - 无法使用 Composer 安装 PHP 扩展 mongo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45484946/

相关文章:

linux - 最大化 MongoDB 连接

javascript - Meteor 发布/订阅独特客户端集合的策略

macos - 我真的需要实现outlineView(_ :objectForValue:byItem:)? 如何实现?

php - Mysql foreach with 条件依赖于其他表记录

php - 如何按点过滤行。 PHP/MySQL

PHP 字符串常量过度使用?

java - 如何将此字符串转换为日期? ||如何在 mongodb 中读取/写入日期?

swift - 尝试导入图像时出现 Metadata.framework 错误

macos - xcode 像 php 或 perl 一样快速解析文本

php - 如何在嵌套在不同文件夹和名称中的 Wordpress 子主题中加载 CSS 文件?