安装laravel前须确认php版本及扩展兼容性:php 8.2+对应laravel 11,8.0.2–8.1.x对应laravel 10,7.4.x仅支持至laravel 8.74.0;缺失mbstring等任一扩展或版本不匹配将导致安装失败。

PHP版本不兼容时安装Laravel框架,必须先确认当前PHP是否满足目标Laravel版本的硬性要求,否则执行composer create-project会卡在依赖解析、报Class 'Mbstring' not found或直接退出,项目目录空有骨架却无法启动。
第一步:查清你的PHP版本和缺失扩展
打开终端,运行php -v。如果输出是PHP 7.4.33或PHP 8.0.1,说明你无法安装Laravel 11(要求≥8.2)或Laravel 10(要求≥8.0.2);低于8.0.2的PHP连Laravel 8.74.0都会触发500错误。
紧接着运行php -m | grep -E 'mbstring|openssl|xml|curl|ctype|json|tokenizer',缺任何一个模块,Composer就无法完成Laravel安装——这不是警告,是致命阻断。
Windows用户注意:【务必用CLI版PHP,而非Apache模块】。XAMPP里真正的CLI路径通常是C:\xampp\php\php.exe,别让终端调用C:\xampp\apache\bin\php.exe,后者不加载CLI扩展。
第二步:按PHP版本选对Laravel版本
不要硬刚高版本Laravel。根据你已有的PHP环境,反向锁定可安装的Laravel大版本:
方法一:PHP 8.2+ → 安装Laravel 11最新版
执行composer create-project laravel/laravel blog,不加版本约束,默认拉取Laravel 11。
方法二:PHP 8.0.2–8.1.x → 只能装Laravel 10
命令必须带版本锁:composer create-project laravel/laravel blog "10.*"。引号不能省,否则shell会把星号当通配符展开报错。
方法三:PHP 7.4.x → 最高只能到Laravel 8.74.0
运行composer create-project laravel/laravel blog "8.74.0"。再高版本会提示Your requirements could not be resolved并终止。
第三步:绕过平台检查的临时方案(仅限调试)
如果你确定要强行在低版本PHP上试跑高版本Laravel(例如PHP 8.0上装Laravel 11),必须先禁用Composer的平台校验:
执行composer create-project laravel/laravel blog --ignore-platform-reqs。
⚠️ 这一步不会解决实际问题——【APP_KEY生成失败、artisan命令崩溃、500错误仍会发生】,因为Laravel 11内部大量使用PHP 8.2新增的只读类、枚举匹配语法,低版本PHP根本无法解析。它只让文件下载完成,别把它当真安装。
第四步:换PHP比换Laravel更可靠
Mac用户用Homebrew:brew install php@8.2 && brew link --force php@8.2,再运行echo 'export PATH="/opt/homebrew/opt/php@8.2/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc。
Ubuntu/Debian用户:sudo add-apt-repository ppa:ondrej/php && sudo apt update && sudo apt install php8.2-cli php8.2-mbstring php8.2-xml php8.2-curl php8.2-ctype php8.2-json php8.2-tokenizer。
Windows用户直接去windows.php.net下载PHP 8.2 Thread Safe ZIP包,解压后把路径加进系统环境变量PATH,再用php -v确认终端调用的是新版本。
换完PHP立刻重试composer create-project laravel/laravel blog,不再报错即成功。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











