如何让Composer适配MAMP PRO环境下的动态PHP版本
以下是几种实用的方法,帮你快速让Composer适配指定的PHP版本:
直接指定MAMP的PHP路径运行Composer
MAMP PRO为每个PHP版本都提供了独立的可执行文件,路径一般是/Applications/MAMP/bin/php/php{x.x.x}/bin/php(把{x.x.x}替换成你需要的版本号,比如php7.4.33)。直接用这个PHP来执行Composer即可:/Applications/MAMP/bin/php/php7.4.33/bin/php /usr/local/bin/composer install如果你的Composer是放在项目目录里的
composer.phar,就把路径换成项目里的phar文件位置。创建版本别名,简化命令
如果你经常切换版本,可以在终端配置文件(~/.bash_profile或~/.zshrc,取决于你用的shell)里添加别名,比如:# 为特定PHP版本创建别名 alias php74='/Applications/MAMP/bin/php/php7.4.33/bin/php' # 绑定该PHP版本到Composer alias composer74='php74 /usr/local/bin/composer'添加后执行
source ~/.bash_profile(zsh用户执行source ~/.zshrc)让配置生效,之后直接用composer74 install就能用指定版本的PHP运行Composer了。通过MAMP PRO项目环境变量全局适配
打开MAMP PRO的项目设置,找到「环境变量」选项,添加一条PATH配置,把目标PHP版本的路径放在最前面:PATH="/Applications/MAMP/bin/php/php{x.x.x}/bin:$PATH"保存后,在该项目目录的终端里直接运行
composer install,系统会优先使用你指定的MAMP PHP版本。项目级Composer配置固定PHP版本
如果你某个项目长期固定用某个PHP版本,可以在项目的composer.json里添加config项,指定PHP二进制文件的路径:{ "config": { "php-bin": "/Applications/MAMP/bin/php/php{x.x.x}/bin/php" } }这样每次在这个项目里运行Composer命令,都会自动使用你指定的PHP版本。
内容的提问来源于stack exchange,提问作者Timberman

