You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下Composer安装Laravel报disk_free_space未定义错误

Windows 10 + XAMPP 环境 Composer 安装 Laravel 报 disk_free_space() 未定义错误解决方案

报错根因

该致命错误触发逻辑非常明确:Composer 运行时调用的 PHP CLI 环境无法识别内置的磁盘空间检测函数disk_free_space(),常见诱因有两个:

  1. 系统环境变量优先级错乱,Composer 没有调用 XAMPP 目录下的 PHP,而是匹配到了系统里其他残缺的 PHP 环境(比如微软应用商店默认带的精简版PHP、之前卸载残留的PHP配置),这类环境要么默认禁用了磁盘检测类函数,要么版本过低不兼容新版Composer
  2. 刚发布的Composer开发快照版本在Windows环境下存在命名空间加载bug,会误将全局PHP内置函数识别为Composer命名空间下的自定义函数,直接触发未定义报错

修复步骤

  • 先确认Composer实际绑定的PHP路径,打开PowerShell执行composer -vvv about,查看输出首行标注的PHP可执行文件路径,正常应该指向你XAMPP安装目录下的D:\Programme\XAMPP\php\php.exe,如果路径不对先改环境变量
  • 修正系统Path优先级:右键此电脑→属性→高级系统设置→环境变量,在系统变量的Path列表中,把XAMPP的PHP路径D:\Programme\XAMPP\php拖拽到列表最顶部,把其他无关的PHP路径(比如WindowsApps下的PHP条目、之前手动安装的残版PHP路径)直接删除,注意:修改完必须关掉所有已打开的PowerShell窗口重开,环境变量才会生效
  • 核对PHP禁用函数配置:打开D:\Programme\XAMPP\php\php.ini,搜索disable_functions配置段,检查列表里是否存在disk_free_space、diskfreespace两个条目,存在就直接删掉,保存配置文件
  • 清理Composer历史缓存,PowerShell执行composer clear-cache
  • 删除之前安装失败生成的半完成blog目录,重新执行安装命令composer create-project --prefer-dist laravel/laravel blog即可

特殊情况兜底

如果以上步骤操作完仍然报相同错误,直接将Composer回退到经过验证的Windows稳定版本即可,执行命令:

composer self-update --2.2.18

回退完成后重新走安装流程就行。

内容的提问来源于stack exchange,提问作者DerWashbr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 19:57:11