如何使用MAMP的PHP版本而不是OSX上的默认版本

Jos*_*ser 57 php mamp ln

我想使用MAMP的PHP版本而不是我的mac上安装的默认版本.我试过用

ln -s /Applications/MAMP/bin/php5.3/bin/php php

但我收到"文件存在"错误.解决这个问题的最佳方法是什么,所以我可以输入php而不是完整路径?

小智 103

我在原始的php位置创建了一个符号链接.

1.找到你的osx php版本:

which php
Run Code Online (Sandbox Code Playgroud)

结果应该是:

/opt/local/bin/php
Run Code Online (Sandbox Code Playgroud)

2.备份(移动)原始的php二进制文件:

sudo mv /opt/local/bin/php /opt/local/bin/php.bak
Run Code Online (Sandbox Code Playgroud)

3.创建符号链接:

sudo ln -s /Applications/MAMP/bin/php/php5.4.4/bin/php /opt/local/bin/php
Run Code Online (Sandbox Code Playgroud)

4.运行新的php版本:

php -v
Run Code Online (Sandbox Code Playgroud)

PS:

为了使这个能够在El-Capitan上运作

  • 将Mac重新启动到RecoveryMode(启动时保持Cmd + R)
  • 打开终端并输入: csrutil disable
  • 重启
  • 要么:sudo ln -s /Applications/MAMP/bin/php/php5.4.4/bin/php /opt/local/bin/php
    sudo ln -s /Applications/MAMP/bin/php/php5.4.4/bin/php /usr/bin/php
  • 重新启动到RecoveryMode并重新启用安全性: csrutil enable


Joh*_*ich 78

我不建议尝试修改在命令行上调用的PHP的默认版本.如果您决定升级操作系统,这样做可能会破坏系统的其他部分并在将来为您提供问题.

有一种替代方案可以满足您的需求.您可以为MAMP的php 5.3副本创建别名.在我的情况下,我将别名命名为phpmamp.打开终端并输入:

alias phpmamp='/Applications/MAMP/bin/php5.3/bin/php'
Run Code Online (Sandbox Code Playgroud)

现在,在命令行输入phpmamp将启动MAMP php interperter.键入以下内容验证:

phpmamp --help
Run Code Online (Sandbox Code Playgroud)

您很可能希望将此文件以及任何其他别名存储在此文件中,~/.bash_profile 以便在重新启动后保留别名.否则,别名应仅持续您所在的特定终端会话.有关创建.bash_profile文件的更多信息,请访问:

http://www.redfinsolutions.com/redfin-blog/creating-bashprofile-your-mac

  • 你也可以为"php"本身创建一个别名,这可以做你想要的而不用乱搞配置:alias php ='/ Applications/MAMP/bin/php5.3/bin/php'这对于像Composer这样的自动化工具可以使用正确版本的php.还记得重新启动终端或输入"source~/.bash_profile"以使更改生效. (5认同)
  • 在以后的版本中,别名phpmamp ='/ Applications/MAMP/bin/php/php5.3.20/bin/php'用您的版本替换5.3.20部分 (3认同)
  • 我之前使用过这种方法,但是我切换到下面的方法,因为默认的php安装没有安装某些扩展(例如mcrypt).这在Laravel安装(使用Composer)和使用工匠时是必需的. (3认同)

Ibr*_*ail 67

我不想篡改当前文件,所以我只是将MAMP PHP bin文件夹添加到$PATHenv变量中.

您可以编辑~/.bash_profile并将以下行添加到顶部

export PATH="/Applications/MAMP/bin/php/php5.6.1/bin:$PATH"

只需将PHP版本更改为您正在使用的当前版本即可.

source ~/.bash_profile编辑文件后别忘了做.

  • 这对我来说真的很有用,也是快速更改P​​HP版本的最简单方法! (3认同)
  • 这是最安全和最简单的方法,并且不会要求您在每次操作系统更新时重新运行脚本. (3认同)
  • 这是更好的答案。如果安装了Mamp,则只需切换安装即可。我运行了“哪个php”,它给了我“ /Applications/MAMP/bin/php/php7.1.8/bin/php”。因此,我首先检查了Mamp的安装目录,并找到了哪个版本。然后我运行`vim〜/ .bash_profile`,将php的导出路径更改为7.0.22。然后我运行`source〜/ .bash_profile`。就是这样,现在当我在命令行中运行“哪个php”时,我得到了:/ Applications / MAMP / bin / php / php7.0.22 / bin / php`一切都像个魅力。 (2认同)

Ale*_*tro 6

2024 - 对于使用ohmyzsh 的用户,要编辑的文件是:

/Users/your_user/.zshrc
Run Code Online (Sandbox Code Playgroud)

因此,您可以编辑此文件并添加路径:

export PATH=/Applications/MAMP/bin/php/php8.0.0/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

将“php8.0.0”替换为 MAMP 中的 php 版本。