PHPEnv是Windows图形化集成环境,phpenv是Linux/macOS命令行多版本管理器;前者含Apache+MySQL+PHP,后者仅管理PHP版本切换,二者不可混淆。

PHPEnv 不是 phpenv —— 这是两个完全不同的工具,名字像但用途、安装方式、适用平台全都不一样。搞混了会浪费大量时间:用 Windows 双击安装包的方式去配 Linux 下的 phpenv,或者反过来在命令行里敲 phpenv install 却发现命令不存在,基本都是因为没分清这两个。
PHPEnv(Windows 图形化集成环境)怎么装?
这是面向 Windows 用户的傻瓜式集成包,含 Apache + MySQL + PHP + phpMyAdmin,带控制面板,适合初学者或快速搭本地站点。
- 去官网
https://www.phpenv.cn/下载 Windows 版安装包(注意不是 GitHub 上那个phpenv) - 安装路径避免中文、空格和
C:\Program Files类目录;推荐D:\PHPEnv - 安装前临时关闭杀毒软件,否则可能拦截服务组件注册
- 勾选“创建桌面快捷方式”,后续启停服务方便很多
- 首次运行会自动检测并安装缺失组件(如 VC++ 运行库),网络慢时可稍等或换时段重试
phpenv(Linux/macOS 命令行多版本管理器)怎么装?
这是类 rbenv / pyenv 的 Shell 工具,专为开发者在终端里切换多个 PHP 版本设计,不带 Web 服务器,也不提供图形界面。
- 必须用 Git 克隆:
git clone https://github.com/phpenv/phpenv.git ~/.phpenv - Shell 配置文件要加两行:
export PATH="$HOME/.phpenv/bin:$PATH"和eval "$(phpenv init -)"(Bash 写~/.bashrc,Zsh 写~/.zshrc) - 执行
source ~/.bashrc(或对应文件)后,再运行phpenv --version验证 - 若提示
command not found,先检查echo $PATH是否含~/.phpenv/bin;若报no such command 'init',说明克隆不完整,删掉重来
启动失败常见原因:端口冲突和权限问题
无论是 PHPEnv 控制面板里的 Apache 启动红标,还是 phpenv 安装后 php -v 报错,大概率卡在这两个地方。
立即学习“PHP免费学习笔记(深入)”;
- PHPEnv 的 Apache 默认占 80 端口,被 Skype、IIS 或其他程序占了就会启动失败;进控制面板 → 配置 → 端口检测,改成 8080 再试
- MySQL 默认 3306,被 Docker 或旧版 XAMPP 占用也会失败;同样可在端口检测页修改
-
phpenv安装 PHP 版本时若报权限错误(如Permission denied),别用sudo硬上,而是确认~/.phpenv所有者是你自己(chown -R $USER ~/.phpenv) - Windows 上 PHPEnv 装在 C 盘导致写入 hosts 失败、无法自动配置域名,本质是 UAC 权限限制;换到 D 盘重装最省事
真正容易被忽略的是:PHPEnv 修改端口后,浏览器访问地址得同步改(比如 http://localhost:8080);而 phpenv 切换版本后,which php 输出路径必须指向 ~/.phpenv/shims/php,否则说明 eval "$(phpenv init -)" 没生效——这个检查点很多人跳过,直接怀疑版本装错了。



















