最可靠方式是用composer create-project加约束符(如^8.0、8.75.*)指定版本,不可只写8或8.x,否则composer误认分支名导致装错版或报错;需确认packagist存在对应tag及php版本兼容。

直接用 composer create-project 指定带约束符的版本号,是最可靠、最无副作用的方式。别信“全局安装器自动选版”或“Laragon点几下就能换Laravel版本”这种说法——Laragon不控制Laravel版本,它只管PHP和Web服务器;laravel/installer默认只装最新版,且无法回退旧模板。
为什么不能只写 8 或 8.x?
Composer会把没符号的字符串(如 8、8.x)当成 Git 分支名去查,而 Laravel 的 Packagist 上根本没有叫 8.x 的分支——只有带语义化约束的版本标签,比如 ^8.0、8.75.*、8.6.0。写错就等于让 Composer 去找一个不存在的东西,结果往往是装上最新版(比如 Laravel 11),或者报错 Could not find package laravel/laravel with version 8.x。
常见错误现象:
- 执行
composer create-project laravel/laravel blog 8→ 装了 Laravel 11 - 执行
composer create-project laravel/laravel blog "8.x"→ 报错找不到包 - 执行
laravel new blog --8→ 不支持该参数,命令失败
^、~、* 这三种约束怎么选?
它们决定你拿到的是“兼容范围”还是“精确系列”,影响后续是否自动升级、是否引入破坏性变更:
-
^8.0:允许升到8.999.999,但绝不会到9.0;适合新项目初期,想保持小版本更新但不跨大版本 -
~8.75.0:只允许补丁升级,即8.75.0→8.75.5,但不会升到8.76.0;适合已上线、需严格锁定行为的生产环境 -
8.75.*:等价于~8.75.0,更直观,推荐日常使用
示例:
Laravel 13.2.0 是基于 PHP 8.3+ 的高性能框架,官方推荐通过 Composer 安装。它内置 AI SDK、JSON:API Resources 及原生向量搜索,支持属性驱动开发与队列路由,大幅提升开发效率。相比旧版,13.2.0 优化了缓存 TTL 管理与实时通信,无需 Redis 即可横向扩展。作为现代 Web 开发首选,它兼顾安全与极速体验,助您快速构建企业级应用。
composer create-project laravel/laravel blog "8.75.*"
这条命令会拉取 laravel/laravel 的 v8.75.x 系列最新模板,其 composer.json 中锁定的 laravel/framework 版本也必然是 8.75.*,不会意外混入 8.76 的变更。
旧版本(如 5.4、5.6)装不上怎么办?
不是所有旧版都还能通过 create-project 安装。Laravel 5.5 起才正式支持该方式装旧模板;5.4 及更早必须用 laravel/installer 的对应旧版:
- Laravel 5.4:
composer global require "laravel/installer:~1.4",再运行laravel new myapp --5.4 - Laravel 5.6:
composer create-project laravel/laravel myapp "5.6.*"可能失败(Packagist 已下架该 tag),得去 GitHub 找v5.6.40tag 手动 clone +composer install - Laravel 6.20.27(最后一个 6.x 补丁版):
composer create-project laravel/laravel myapp "6.20.27"仍有效
关键判断点:打开 https://www.php.cn/link/303807c0c0db7db426d7b6d2081a276f,搜你要的版本号,看有没有对应 tag。没有,就别硬试 create-project。
真正容易被忽略的是 PHP 版本兼容性——比如 Laravel 8 要求 PHP ≥ 7.3,但如果你用 Laragon 切到了 PHP 8.2,又试图装 Laravel 5.7(只支持到 PHP 7.2),Composer 会卡在依赖解析阶段,报一堆 your requirements could not be resolved,而不是明确告诉你“PHP 太高”。先查清目标 Laravel 版本的 php 要求,再配环境,顺序不能反。










