【问题标题】:Composer use MAMP PHP VersionComposer 使用 MAMP PHP 版本
【发布时间】:2016-08-04 16:50:11
【问题描述】:

我正在尝试通过 Composer 安装一个需要 PHP 5.6.0 的软件包。我的 MAC 运行的是 PHP 5.5.31,但 MAMP 运行的是 PHP 7.0。由于未满足 PHP 要求,该软件包将无法下载,因为它查看的是我的 macOS 版本,而不是我实际与 MAMP 一起使用的版本。我该如何解决这个问题?

【问题讨论】:

  • 在终端中运行php -v 时显示的是什么版本的php?如果是 osx 版本而不是 mamp 版本,我建议您将 mamp 版本设置为默认的 php 版本。看这里stackoverflow.com/questions/4262006/…
  • 5.5.31 是我做php -v时得到的一个
  • 虽然启用“激活所选 PHP 版本的命令行快捷方式”会在运行 which php 时显示 MAMP PHP,但 composer 会选择 Mac 默认 PHP。我必须明确地将export PATH(下面的答案)添加到作曲家以获取 MAMP。

标签: php composer-php mamp


【解决方案1】:

MAMP 的 PHP 位于此处:

/Applications/MAMP/bin/php/php7x.x/bin/

默认的 OSX PHP 位于

/usr/bin/php

/usr/bin 默认在PATH 变量中。

当您希望 OSX 使用 MAMP 版本时,您需要将 /Applications/MAMP/bin/php/php7.x.x/bin/ 添加到 PATH 变量中。

只需在终端中编辑 ~/.bash_profile 并输入

vim ~/.bash_profile

如果你找不到 ~/.bash_profile 那么你必须用

创建一个

触摸 ~/.bash_profile

并在文件末尾添加以下行:

导出 PATH=/Applications/MAMP/bin/php/php7.x.x/bin/:$PATH

您只需要查看您的 MAMP php 的正确版本,并将上面示例中的 x.x 替换为正确的数字。 (例如 7.0.2)

如果一切正常,请重新启动您的 terminal.app 并再次执行 php -v。现在你必须看到新版本。

然后尝试再次安装 composer 包!祝你好运

帮助来源:how-to-override-the-path-of-php-to-use-the-mamp-path

【讨论】:

    【解决方案2】:

    如果你在终端中输入“which php”,它会告诉你它在哪里寻找 PHP。我猜有 2 个不同版本的 PHP 安装到不同的目录中。在这种情况下,您可以使用 bash 脚本来设置所需 PHP 版本的正确路径?

    我在安装了 git 等软件的 Mac 上遇到过类似问题,但它正在其他地方寻找它(例如与 Xcode 捆绑的版本)

    【讨论】:

      【解决方案3】:

      这对我来说很容易:

      第一次备份系统phpsudo mv /usr/bin/php /usr/bin/~php

      然后使用以下命令创建一个从 /Applications/MAMP/bin/php/phpX.x.x/bin/php 到 /usr/bin/php 的符号链接:sudo ln -s /Applications/MAMP/bin/php/phpX.x.x/bin/php /usr/bin/php。现在您的 mamp php(及其配置)随处可用。

      【讨论】:

        猜你喜欢
        • 2017-04-13
        • 1970-01-01
        • 2015-12-21
        • 2018-02-22
        • 1970-01-01
        • 2014-12-03
        • 2020-02-02
        • 1970-01-01
        • 2016-11-22
        相关资源
        最近更新 更多