错误因Windows路径长度超限导致Composer解压失败,解决方法包括:1. 启用LongPathsEnabled注册表项以支持长路径;2. 将项目移至短路径如C:\project并清理缓存;3. 使用composer install --prefer-source避免压缩包解压;4. 更新PHP和Composer版本。优先推荐启用系统长路径支持。

这个错误是因为 Windows 系统对文件路径长度有限制(通常为 260 个字符),而 Composer 在解压某些嵌套较深的依赖包时,生成的完整路径超出了系统限制。
Windows 默认启用 MAX_PATH 限制,当 Composer 解压包含深层目录结构的包时,目标路径可能超过 260 字符,导致 ZipArchive::extractTo() 失败。
1. 启用长路径支持(推荐)
修改注册表或组策略,允许 Windows 支持更长的路径:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
LongPathsEnabled 的值改为 1(如不存在则新建 DWORD 32-bit)重启后生效。之后 PHP 的 ZipArchive 就能处理更长路径。
2. 修改 Composer 缓存和项目路径
将项目移到磁盘根目录下,缩短基础路径:
C:\Users\YourName\Documents\projects\deep\nested\projectC:\project
composer clear-cache
3. 使用 --prefer-source 安装(临时绕过)
避免使用压缩包安装,改用源码克隆:
composer install --prefer-source4. 更新 PHP 和 Composer
确保使用较新版本的 PHP(>=7.4)和 Composer,它们对长路径的支持更好。
基本上就这些方法,优先启用系统长路径支持最彻底。以上就是composer 提示 "ZipArchive::extractTo(): Full extraction path exceed..." 路径过长错误的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号