-
-
Notifications
You must be signed in to change notification settings - Fork 242
Open
Description
问题描述
在 macOS 系统下,我仅通过 Homebrew 安装了一个 PHP 版本,并尝试在 flyenv 中仅配置该 Homebrew 安装的 PHP 为环境变量,但 flyenv 会自动将以下两个路径添加到环境变量中,且这两个路径的优先级高于 Homebrew PHP 的路径:
/Users/tony/Library/PhpWebStudy/env/php/Users/tony/Library/PhpWebStudy/env/php/bin
核心矛盾:执行 php -v 显示的是 Homebrew 安装的 PHP 版本(符合预期),但执行 which php 输出的却是上述 PhpWebStudy 路径下的 php 可执行文件(不符合预期),且我并未主动配置过这两个 PhpWebStudy 相关路径。
环境信息
- 操作系统:macOS 15.7 (aarch64)
- PHP 安装方式:Homebrew(仅这一个 PHP 版本)
- 环境变量查看方式:
echo $PATH
复现步骤
- 确认本地仅存在 Homebrew 安装的 PHP,无其他 PHP 版本;
- 通过 flyenv 配置环境变量;
- 执行
echo $PATH查看环境变量,发现/Users/tony/Library/PhpWebStudy/env/php和/Users/tony/Library/PhpWebStudy/env/php/bin被自动添加,且排在 Homebrew PHP 路径之前; - 执行
which php,输出为/Users/tony/Library/PhpWebStudy/env/php/bin/php(非 Homebrew 路径); - 执行
php -v,输出为 Homebrew 安装的 PHP 版本。
预期行为
- flyenv 仅添加我主动配置的 Homebrew PHP 路径到环境变量,不自动添加未配置的
/Users/tony/Library/PhpWebStudy/env/php相关路径; - 若必须添加,
which php应输出手动配置的 Homebrew PHP 路径,且路径优先级符合配置逻辑。
实际行为
- 未配置的
/Users/tony/Library/PhpWebStudy/env/php和/Users/tony/Library/PhpWebStudy/env/php/bin被自动添加到$PATH,且优先级高于手动配置的 Homebrew PHP 路径; which php输出 PhpWebStudy 路径,但php -v却显示 Homebrew PHP 版本,出现路径与版本不匹配的矛盾。

Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels