windows装composer核心前提是php cli环境就绪:php -v能显示版本、php -m含openssl和zlib、path包含php.exe目录,三者缺一不可;否则需手动配置path并启用对应扩展。

Windows 上装 Composer 不是“点下一步就行”,核心卡点永远在 PHP 环境是否真就绪——php -v 能出版本号、php -m | findstr openssl 能打出 openssl、PATH 里有 php.exe 所在目录,这三件事全满足,Composer 才可能跑起来。
php -v 报“不是内部或外部命令”怎么办
这不是 Composer 的问题,是 Windows 根本找不到 php.exe。别急着下安装器,先确认 PHP 是否真可用:
- 打开 CMD 或 PowerShell,执行
php -v—— 必须返回类似PHP 8.2.12的输出,否则停在这一步 - 用文件管理器去你的 PHP 安装目录(比如
C:\xampp\php、C:\php或C:\wamp64\bin\php\php8.3.0)确认是否存在php.exe - 右键“此电脑”→“属性”→“高级系统设置”→“环境变量”,在“系统变量”中找到
Path,点击“编辑”→“新建”,填入 PHP 目录完整路径(只到文件夹,不含php.exe) - 关掉所有已打开的终端,重新开一个再试
php -v
安装器提示 “PHP executable not found” 或自动选错 php.exe
官方 Composer-Setup.exe 的自动探测经常失效,尤其当你装了多个 PHP 版本(比如 XAMPP 带 8.1,自己又单独装了 8.3),它可能默认选旧的那个,或者根本没扫到。
在 Windows 11 上"直接发声"的 TTS(从 WSL2/TUI 调用 powershell.exe + System.Speech)。适用于用户说"说出来/读出来/语音播报/用TTS",或反馈"没声音/tts 生成的 mp3 是空的/播不出来",以及需要中文语音但 OpenClaw 内置 tts 不可用时。
- 运行安装器后,看到 PHP 路径那一栏,别信“Auto-detected”,一定点
Browse手动选 —— 找到你实际想用的php.exe(例如C:\php\php.exe或D:\xampp\php\php.exe) - 如果装完发现
composer --version报错,但php -v没问题,大概率是安装器写错了注册表或PATH;此时直接手动把C:\ProgramData\ComposerSetup\bin加进系统Path变量更可靠 - 不推荐“手动放
composer.phar+composer.bat”这种老方案:容易权限出错、不同终端行为不一致,除非你在受控企业环境里被禁了 .exe
composer install 卡在 “Loading composer repositories…”
这不是网速慢,是 Composer 死等 packagist.org 的 HTTPS 响应,而国内 DNS 和 TLS 握手常超时。换源必须做,且要注意优先级。
- 执行
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/(阿里云镜像目前最稳) - 如果项目里已有
composer.json,且里面含repositories字段,全局配置会被无视——得删掉或改成同个阿里云地址 - 换源后首次运行仍可能慢(要缓存元数据),但后续就快了
最容易被忽略的是:PHP 的 openssl 和 zlib 扩展必须在 CLI 模式下启用,而不仅仅是 Apache/Nginx 模块里开着——php -m | findstr openssl 和 php -m | findstr zlib 都得有输出,否则连 HTTPS 源都连不上,报错可能只显示“cURL error 60”或“SSL certificate problem”,根本不会提扩展的事。










