phpenv是windows下的一键php集成环境,非多版本管理工具;其核心功能为提供apache/nginx+php+mysql等开箱即用服务,支持多php版本共存但需手动切换,不支持phpenv式自动版本管理。

phpEnv 本身不是多版本管理工具(比如 phpenv),而是 Windows 下的一键集成环境,类似 XAMPP 或 phpStudy。它不自带 phpenv 命令,也不支持自动切换 PHP 版本——这点必须先划清界限,否则后续所有配置都会跑偏。
确认 phpEnv 的 PHP 版本和扩展是否满足 Yii2 要求
Yii2 最低要求 PHP 7.4,推荐 PHP 8.0+;且必须启用以下扩展:
-
pdo_mysql(数据库连接) -
mbstring(字符串处理) -
openssl(安全通信、密码哈希) -
gd或imagick(验证码、图片缩略图等可选但常用) -
intl(国际化支持,部分组件强依赖)
操作方式:
- 打开 phpEnv 控制面板 → 点击“PHP设置” → 查看当前 PHP 版本和已启用扩展
- 若缺少扩展,勾选对应项并点击“应用”,phpEnv 会自动修改
php.ini并重启 Apache - 不确定是否生效?在网站根目录放一个
info.php,内容为<?php phpinfo(); ?>,浏览器访问验证
用 Composer 在 phpEnv 中安装 Yii2 基础模板
phpEnv 自带的 PHP 可执行文件路径通常是 D:\phpEnv\php\php.exe(以你实际安装路径为准),必须用这个路径调用 composer,否则可能因 PHP 版本或扩展不一致导致安装失败。
实操步骤:
- 打开命令行(CMD 或 PowerShell),cd 到 phpEnv 的网站根目录(如
D:\phpEnv\www) - 运行:
php D:\phpEnv\php\composer.phar create-project --prefer-dist yiisoft/yii2-app-basic yii2-demo - 不要直接用全局
composer命令——除非你确认它的 PHP 环境和 phpEnv 一致 - 安装完成后,确保
yii2-demo/web是 Web 服务器的 DocumentRoot(即浏览器应通过http://localhost/yii2-demo/web/访问)
配置 Apache 支持 Yii2 的 URL 美化(Pretty URL)
Yii2 默认使用 index.php?r=site/about 这类带脚本名的 URL。要改成 /site/about,需 Apache 启用 mod_rewrite 并配置重写规则。
关键点:
- phpEnv 默认已启用
mod_rewrite,但需确认:打开D:\phpEnv\apache\conf\httpd.conf,检查是否有LoadModule rewrite_module modules/mod_rewrite.so且未被注释 - 在
yii2-demo/web/.htaccess中粘贴标准规则(Yii 官方提供):<ifmodule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php </ifmodule> - 如果 Apache 报 500 错误,大概率是
.htaccess权限或AllowOverride未放开:编辑httpd.conf,找到<directory></directory>区块,把AllowOverride None改成AllowOverride All
权限与 runtime 目录写入问题
Yii2 运行时需要向 runtime/ 和 web/assets/ 目录写入缓存、日志、资源包。Windows 下 phpEnv 使用 Apache 服务账户(通常是 SYSTEM 或 LocalService)运行,容易因权限不足报错:
- 错误现象:
Unable to write to directory: D:\phpEnv\www\yii2-demo\runtime - 解决方法:右键
runtime文件夹 → “属性” → “安全” → 编辑权限 → 添加SYSTEM用户并赋予“完全控制” - 同理处理
web/assets目录(首次访问时自动生成) - 开发阶段可临时开启调试模式,但上线前务必关闭
YII_DEBUG,否则runtime/logs会持续写入,且暴露敏感信息
最常被忽略的是 AllowOverride All 和 runtime 目录的 SYSTEM 权限——这两个点卡住的人最多,建议装完就立刻检查。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











