Mac Mojave系统PHP CLI版本升级失败求助
Got it,我来帮你搞定这个终端PHP版本和XAMPP网页端不一致的问题~核心原因是终端的环境变量PATH里,旧版本PHP的路径优先级比XAMPP的高,咱们一步步来调整:
第一步:确认当前PHP路径和XAMPP的PHP位置
先在终端里输入以下命令,看看当前用的是哪个PHP:
which php php -v你大概率会看到输出是MAMP的7.1.23版本,路径可能是
/Applications/MAMP/bin/php/php7.1.23/bin/php或者系统自带的/usr/bin/php确认XAMPP的PHP路径:XAMPP的PHP默认在
/Applications/XAMPP/bin/目录下,终端输入命令验证:ls /Applications/XAMPP/bin/ | grep php能看到
php文件就说明路径没错。
第二步:修改环境变量,让XAMPP的PHP优先被调用
Mac Mojave终端默认用bash,如果你用的是zsh,对应修改配置文件即可:
打开终端,编辑bash的配置文件:
nano ~/.bash_profile(如果是zsh,就输入
nano ~/.zshrc)在文件的最顶部添加一行,把XAMPP的bin目录放到PATH的最前面:
export PATH="/Applications/XAMPP/bin:$PATH"这样系统找PHP的时候会先找XAMPP的版本,而不是旧的MAMP或系统自带版本。
保存并退出nano:按
Ctrl+O,回车确认,再按Ctrl+X退出。
第三步:让配置生效并验证
终端输入命令让配置立即生效:
source ~/.bash_profile(zsh的话输入
source ~/.zshrc)再次验证PHP版本:
which php php -v这时候
which php应该输出/Applications/XAMPP/bin/php,php -v也会显示你安装的7.3版本啦~
额外注意点
如果之前你给MAMP的PHP加过环境变量,可以打开~/.bash_profile或~/.zshrc,把类似export PATH="/Applications/MAMP/bin/php/php7.1.23/bin:$PATH"的行注释掉(前面加#),避免冲突。
内容的提问来源于stack exchange,提问作者Nitish Kumar

