必须让composer调用xampp的php.exe并启用cli模式下的openssl/curl扩展,否则composer install会卡在“resolving dependencies”或报ssl错误;需用完整路径验证php.exe可用、编辑c:\xampp\php\php.ini取消两扩展注释、安装时手动指定该php.exe路径,并将composer路径加入系统path后重启终端。

能用,但必须让 Composer 明确调用 XAMPP 自带的 php.exe,且 CLI 模式下 openssl 和 curl 扩展必须启用——跳过任一环节,composer install 都会卡在 “Resolving dependencies” 或直接报 SSL 错误。
确认 XAMPP 的 php.exe 路径是否真实可用
很多人以为 php -v 有输出就万事大吉,其实那可能是 WAMP、WSL 或手动安装的 PHP 在响应。Composer 只认你指定的那个 php.exe,不是系统 PATH 里随便哪个。
- 打开 CMD 或 PowerShell,**不要用
php -v,而是直接运行完整路径**:C:\xampp\php\php.exe -v - 如果报“不是内部或外部命令”,检查实际路径:新版 XAMPP 可能是
C:\xampp\php8\php.exe或C:\xampp\php7\php.exe,进目录手动确认php.exe是否存在 - 如果弹窗一闪而退,说明
php.ini缺失或扩展依赖失败——先别装 Composer,这一步不通,后面全白忙
CLI 模式下的 openssl/curl 必须启用(不是 Apache 的 php.ini)
XAMPP 有两套 php.ini:Apache 用一套,命令行(CLI)用另一套。Composer 走的是 CLI,而默认只给 Apache 开了扩展。不改对文件,composer create-project 会报 cURL error 60 或 file_get_contents(): SSL operation failed。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 编辑的是
C:\xampp\php\php.ini(不是\apache\bin\下那个) - 搜索并取消注释这两行:
extension=openssl和extension=curl(不要写成php_openssl.dll) - 确认
extension_dir指向正确,例如:extension_dir = "C:\xampp\php\ext"(注意反斜杠方向和路径真实存在) - 改完保存,**关闭所有已打开的终端窗口,新开一个**,再运行:
php -m | findstr openssl—— 有输出才算生效
安装 Composer 时必须手动指定 php.exe 路径
官方 Composer-Setup.exe 默认扫描系统 PATH,XAMPP 的 php.exe 不在其中,它会自动跳过或报错“PHP not found”。不能点 Next 蒙混过关。
- 下载
Composer-Setup.exe后双击运行,在 “Select PHP executable” 页面,**务必点击 Browse → 导航到C:\xampp\php\php.exe(或你的真实路径)→ 选中它** - 安装完成后,
composer --version仍报“不是内部或外部命令”?说明C:\ProgramData\ComposerSetup\bin没进 PATH —— 手动添加该路径到系统环境变量,然后重启终端 - 验证是否成功:
where composer应返回类似C:\ProgramData\ComposerSetup\bin\composer.bat的路径
中文路径/空格导致 vendor 加载失败的硬伤
如果你把项目放在 D:\我的项目\laravel-app 这类含中文或空格的路径下,composer install 可能静默失败,或者 Web 访问时报 Class not found,根源不在 autoload,而在 PHP 对非 ASCII 路径的 CLI 解析异常。
- 开发时**一律使用纯英文、无空格、无特殊字符的路径**,例如:
D:\projects\myapp -
vendor/autoload.php必须用绝对路径引入:require __DIR__ . '/vendor/autoload.php';,不能只写require 'vendor/autoload.php'; - 若已生成 vendor 但 Web 报错,检查 Apache 是否以管理员权限运行,而 CMD 是普通用户执行的 —— 权限不一致会导致
vendor目录部分文件不可读
真正卡住人的从来不是“怎么点下一步”,而是 php.exe 路径没对、CLI 的 php.ini 没改、PATH 没刷新、路径含中文——四个点里只要漏一个,composer 就不会按你预期工作。










