作者 🐼
wangjing
-
phpstudy 本机windows,现在的php环境

安装第2步
.安装依赖包(确保 PHP 版本 >= 8.1 且安装 fileinfo 扩展)
在根目录下 composer install ,如果有报错信息可以使用命令
composer install --ignore-platform-reqs
我php.ini中进行了extension=openssl,还是报错
然后修改disable-tls =true,;extension=openssl,注释掉openssl,还是报错
你好!虽然暂时无法直接读取你上传的图片链接,但根据你描述的 `phpStudy + Windows` 环境以及执行 `composer install` 时的典型表现,这类问题通常集中在 **扩展未真正生效、PHP与Composer路径不一致、或Composer SSL/证书验证异常**。
请按照以下顺序逐步排查,90% 以上的同类问题可在此过程中解决:
### 🔍 第一步:确认扩展是否真正被 PHP 加载
只在 `php.ini` 写 `extension=xxx` 是不够的,phpStudy 需要**重启服务**才能生效,且需确认 DLL 文件是否存在。
1. 按 `Win + R` 输入 `cmd` 打开命令行,运行:
```cmd
php -m
```
2. 在输出的模块列表中搜索 `openssl` 和 `fileinfo`。
- ✅ 如果存在:说明扩展已生效,继续下一步。
- ❌ 如果不存在:回到 phpStudy 面板 → `当前PHP版本` → `扩展设置` → 勾选 `fileinfo` 和 `openssl` → 点击 `保存` → **务必重启 PHP 服务**。然后再次运行 `php -m` 验证。
> 💡 提示:EasyAdmin8 强依赖 `fileinfo`,若缺失会导致 `composer.json` 校验失败或运行时抛出 `Class "Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface" not found` 等错误。
---
### 🔄 第二步:确保 Composer 调用的是 phpStudy 的 PHP
Windows 环境下经常会出现 `composer` 调用了系统环境变量的旧版 PHP,而不是 phpStudy 管理的那一套。
1. 分别运行以下命令,观察版本号是否一致:
```cmd
php -v
composer -V
```
2. 如果不一致,临时让 Composer 跟随 phpStudy 的 PHP:
```cmd
setx PHP_HOME "D:\phpstudy_pro\Extensions\php\php8.2.8nts"
setx PATH "%PHP_HOME%;%PHP_HOME%\ext;%PATH%"
```
(请将路径替换为你 phpStudy 实际的 PHP 安装目录)
打开新的 CMD 窗口后再执行 `composer install`。
---
### 🛡️ 第三步:解决 Composer SSL/证书问题(Windows 高频坑)
你提到修改 `disable-tls` 或注释 `openssl` 仍报错,很可能是因为 Composer 在拉取包时触发了系统 SSL 验证拦截。
1. **临时关闭安全传输验证**(仅用于测试是否为证书问题):
```cmd
composer config --global secure-http false
composer install
```
如果能安装成功,说明确实是证书问题。建议后续恢复并配置正规证书:
```cmd
composer config --global secure-http true
composer config --global cafile "C:\path\to\cacert.pem"
```
(证书文件可从 https://curl.se/docs/caextract.html 下载最新版本)
2. 如果公司网络有代理或防火墙拦截,可配置镜像源:
```cmd
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
```
---
### 🐞 第四步:深度调试(关键)
你已经尝试过 `--ignore-platform-reqs`,这说明问题**不在 PHP 版本或基础扩展**。请使用调试模式抓取真实错误栈:
```cmd
cd D:\你的项目根目录
rd /s /q vendor
del composer.lock
composer install -vvv
```
⚠️ `-vvv` 会输出详细执行日志,重点看最后几行包含 `Fatal error`、`Failed to download`、`Permission denied` 或 `cURL error` 的片段。
---
### 📝 需要你补充的信息(如有上述步骤仍未解决)
如果你在执行后仍有报错,请提供以下 3 项内容,我将为你精准定位:
1. 运行 `composer install -vvv` 的**完整控制台输出**(可直接复制文本)
2. `php -v` 和 `composer -V` 的版本号
3. phpStudy 中显示的 **PHP 架构**(NTS/TS)与 **位数**(x64/x86)
别担心,Composer 报错虽然看起来冗长,但核心原因通常很固定。随时把日志发我,我们一步步搞定它! 🚀