MacOs 使用 Homebrew 更改默认 php 版本

Posted

技术标签:

【中文标题】MacOs 使用 Homebrew 更改默认 php 版本【英文标题】:MacOs change default php version with Homebrew 【发布时间】:2021-12-31 06:26:09 【问题描述】:

我正在运行 MacOS Catalina。我安装了php@8.0,现在我想将默认值从php@7.4 更改为php@8.0

我用这个命令安装了php@8.0

brew install shivammathur/php/php@8.0

我尝试使用以下命令更改默认 php

brew link --overwrite --force php@8.0

它输出这个:

Warning: Already linked: /usr/local/Cellar/php/8.0.2
To relink:
  brew unlink php && brew link php

之后我重新启动 Apache 和终端,但是当我使用以下命令获取 PHP 版本时:

php -v

O 得到这个输出:

PHP 7.4.15 (cli) (built: Feb  4 2021 12:11:40) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.15, Copyright (c), by Zend Technologies

在终端输出中运行:

brew unlink php && brew link php

返回这个输出:

Unlinking /usr/local/Cellar/php/8.0.2... 24 symlinks removed.
Linking /usr/local/Cellar/php/8.0.2... 24 symlinks created.

重启Apache后,我得到了这个版本的PHP:

PHP 7.4.15 (cli) (built: Feb  4 2021 12:11:40) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.15, Copyright (c), by Zend Technologies

【问题讨论】:

请将echo $PATHtype php 的输出添加到您的问题中。 【参考方案1】:

我的 Mac 上安装了多个版本的 php,并将根据我使用的项目将其切换到 ~/.zshrc。

只需取消注释您要使用的那个并注释您不再希望使用的那个。您需要使用 brew 来安装目标版本。

关闭终端然后重新打开以使更改生效。或者运行 source ~/.zshrc

# PHP 7.4
export PATH="/usr/local/opt/php@7.4/bin:$PATH"
export PATH="/usr/local/opt/php@7.4/sbin:$PATH"

# PHP 7.3
#export PATH="/usr/local/opt/php@7.3/bin:$PATH"
#export PATH="/usr/local/opt/php@7.3/sbin:$PATH"

【讨论】:

【参考方案2】:

基于Robert Saylor我执行:

# PHP 8.0.2
export PATH="/usr/local/Cellar/php/8.0.2/bin:$PATH"
export PATH="/usr/local/Cellar/php/8.0.2/sbin:$PATH"

然后检查php版本:

PHP 8.0.2 (cli) (built: Feb  4 2021 17:58:53) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.2, Copyright (c), by Zend Technologies

【讨论】:

【参考方案3】:

卸载php@7.4后我的问题解决了

brew uninstall php@7.4

检查php版本:

PHP 8.0.2 (cli) (built: Feb  4 2021 17:58:53) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.2, Copyright (c), by Zend Technologies

【讨论】:

这很有帮助,谢谢,我一直被困在这个问题上......

以上是关于MacOs 使用 Homebrew 更改默认 php 版本的主要内容,如果未能解决你的问题,请参考以下文章

openssl安装与使用(MacOS)

openssl安装与使用(MacOS)

openssl安装与使用(MacOS)

如何在不打开终端的情况下更改默认 shell?

MACOS-国内安装HomeBrew-配置国内镜像(如果报错找不到文件夹则创建它)

macOS安装Homebrew