在 MAC 上使用 Homebrew 安装 PHP
Posted
技术标签:
【中文标题】在 MAC 上使用 Homebrew 安装 PHP【英文标题】:Installing PHP using Homebrew on MAC 【发布时间】:2017-07-21 03:32:58 【问题描述】:我正在尝试使用 Homebrew 在我的 MAC 机器上安装 php。
我正在使用以下命令:
brew install php
但是,我收到以下错误:
Error: No available formula with the name "php"
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
Error: No formulae found in taps.
【问题讨论】:
【参考方案1】:更新
2018 年 2 月,php72
公式(当时 PHP 的当前版本)已移入 Homebrew 的核心 Tap,并重命名为 php
。
homebrew/php
在 2018 年 1 月点击 has been deprecated,然后在 2018 年 3 月 31 日存档。其中包含的公式不再可用。
自 2018 年 2 月起,使用 Homebrew 安装 PHP 非常简单:
$ brew install php
较旧的 PHP 版本 that are still maintained 可以使用新的 @
版本约定安装(PHP 7.1 为 php@7.1
)。
原始答案(不再可用)
PHP 生态系统存在于homebrew/php
水龙头中。您可以找到解释器的六个版本(从5.3
到7.1
)、它们的扩展以及一些与PHP 相关的工具。
为了安装 PHP,您必须先安装 homebrew/php
点按(只需要一次):
$ brew tap homebrew/php
$ brew install php70
或者您可以通过运行一步完成这两项操作:
$ brew install homebrew/php/php70
你可以通过搜索php
首先发现所有这些:
$ brew search php
【讨论】:
更新到最新版本:$ brew tap homebrew/homebrew-php
然后brew install php72
。或者您可以检查选项如何安装 php72 brew options php72
。
另外请注意,随着 2018 年 3 月的更新,所有的 php-XXX 扩展模块都不再在自制软件中,您必须使用 pecl 来安装它们。对我来说,我以前是brew install php72-yaml
,现在我必须pecl channel-update pecl.php.net
,然后是pecl install yaml
。这可能需要您安装一些构建工具,例如 autoconf,如果您还没有的话。
错误:homebrew/php 已被弃用。此水龙头现在是空的,因为它的所有公式都已迁移。
除非您需要特定版本的 PHP 来匹配您的生产环境,这始终是一个好主意,并且通常是现实生活中的要求。如果您在生产中有多个具有不同版本的客户端怎么办?请查看phpenv。
谢谢,这对我有用,我在 Big Sur macOS 11.1 上【参考方案2】:
用 brew 安装 PHP 后,
brew install php@7.3
或者你需要的任何版本(可以是:php@7.2)
运行此命令以确保您已安装 PHP:brew list | grep php
然后您需要手动添加别名,如下所示:
alias php='/usr/local/Cellar/php@7.3/7.3.13/bin/php'
然后,要使更改生效,您需要刷新终端。您可以使用:source ~/.bash_profile
命令,或者关闭并打开终端。
【讨论】:
谢谢,这对我有用。我认为自制软件的全部意义在于处理这些配置调整...... @pixeline :如果 macOS 已经安装的工具(如 php 命令)突然换成不同的版本,这对开发人员(和操作系统)来说将是一场噩梦。 您不应该使用上面提到的别名! 在别名中指定版本号仅在下一个次要版本之前有效,PHP 需要来自bin
目录的其他工具呢?在你的 shell 启动脚本的末尾使用它:export PATH="$HOMEBREW_PREFIX/opt/php@7.3/bin:$PATH"
然后所有适用于 7.3.x 的命令(不仅仅是php
)都可用并首先选择。
顺便说一句!我已将上面评论中使用的变量 $HOMEBREW_PREFIX 映射到eval $(brew --prefix)
的输出,如:export HOMEBREW_PREFIX="$(brew --prefix)"
提一下的好主意?这通常是/usr/local
,但将其映射到变量使其更便携。
附加:在 bash_profile 中放入别名后,您可能需要重新启动终端。它运作良好。至于路径,你可以自己搜索,因为当前的 php@7.3/7.xxxxxxxx/bin 不一样。【参考方案3】:
我在 2021 年使用 Mac OS Big Sur 遇到了这个错误。 运行以下命令帮助了我
rm -rf $(brew --repo homebrew/core)
brew tap homebrew/core
brew install php
Link to source
【讨论】:
你让我的好朋友,昨天我的 macos 更新了,PHP 没有工作,现在花了 8 多个小时后,我的 PHP 安装好了,非常感谢 这个解决方案对我有用(macOS Monterey)【参考方案4】:你可以跑
brew doctor
查看由于某些原因正在使用哪个分支,某些公式不在原点....所以请在 brew 上结帐以掌握
git -C $(brew --repo homebrew/core) checkout master
然后尝试运行
brew search php
查看是否列出
【讨论】:
以上是关于在 MAC 上使用 Homebrew 安装 PHP的主要内容,如果未能解决你的问题,请参考以下文章