Laravel如何升级到最新版本?(升级指南和步骤)
发布时间 - 2026-01-01 00:00:00 点击率:次Laravel 11 升级需分三步:先确认环境(PHP ≥8.2)、备份并新建分支;再更新 composer.json 及依赖,运行 php artisan upgrade 迁移结构;最后验证缓存、测试、集成与日志,准备回滚。
直接升级 Laravel 到最新主版本不是改个数字就完事,关键在控制风险、适配变更、验证结果。Laravel 11 是当前最新稳定版(截至 2025 年底),它对 PHP 8.2+ 有硬性要求,且结构精简、内核重构,跳过中间版本容易出问题。
先确认环境和备份
这是所有操作的前提,不能省略:
- 运行 php -v 确认 PHP 版本 ≥ 8.2;低于则先升级 PHP
- 执行 php artisan --version 查看当前 Laravel 版本,判断升级跨度(例如从 9 → 11 就不建议跳过 10)
- 用 git checkout -b upgrade-to-11 新建分支,避免污染主干
- 完整备份代码 + 数据库 + config/ 和 .env 文件
更新 composer.json 并拉取依赖
核心是让 Composer 解析新版依赖树,同时兼顾生态包兼容性:
- 打开 composer.json,修改 "laravel/framework": "^11.0"(原为 ^10.0 或更低)
- 同步更新配套包:如 "laravel/sanctum": "^4.0"、"spatie/laravel-ignition": "^2.4"、"nunomaduro/collision": "^8.1"
- 检查 "php" 行是否已改为 "^8.2",否则 Composer 会拒绝安装
- 保存后运行 composer update --with-all-dependencies,避免部分包被锁死
处理结构性与代码级变更
Laravel 11 引入了轻量应用结构,默认不生成 app/Http/Controllers 等目录,还需调整多处逻辑:
- 运行 php artisan upgrade(需先 composer require laravel/upgrade --dev),自动迁移目录结构和配置
- 检查 AppServiceProvider:register/boot 方法签名未变,但部分绑定方式推荐改用容器扩展
- HTTP 内核中中间件组定义方式简化,旧的 $middlewareGroups 需按新模板重写
- 移除所有 illuminate/* 的手动 require(Laravel 11 已统一由框架管理)
- 搜索项目中 str()、array_* 辅助函数调用,替换为 Str:: 或 Arr:: 命名空间调用
验证与上线前收尾
升级完成≠可用,必须逐层验证:
- 清空缓存:php artisan config:clear && php artisan cache:clear && php artisan view:clear
- 运行全部测试:phpunit 或 php artisan test,重点关注认证、队列、API 响应
- 手动触发一次备份、邮件通知、队列任务,确认第三方集成未中断
- 在预发布环境跑 24 小时,监控日志中的 Deprecated 和 Undefined array key 类警告
- 准备好回滚命令:git checko
ut main && composer install && php artisan migrate:rollback
基本上就这些。不复杂但容易忽略细节,尤其是跨大版本时的配置迁移和第三方包适配。官方 UPGRADING.md 和 changelog.md 比任何教程都准,建议边操作边对照着看。
# php
# laravel
# js
# git
# json
# composer
# app
# ai
# 2025
# 中间件
# Array
# 命名空间
# require
# register
# undefined
# 数据库
# http
# 重构
# 第三方
# 跳过
# 这是
# 尤其是
# 就不
# 重写
# 还需
# 绑定
# 它对
# 更低
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
如何用PHP快速搭建高效网站?分步指南
微信小程序 require机制详解及实例代码
浅谈javascript alert和confirm的美化
nginx修改上传文件大小限制的方法
网站制作软件有哪些,制图软件有哪些?
网站制作壁纸教程视频,电脑壁纸网站?
js代码实现下拉菜单【推荐】
高端智能建站公司优选:品牌定制与SEO优化一站式服务
EditPlus中的正则表达式实战(5)
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
如何在阿里云通过域名搭建网站?
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
如何在七牛云存储上搭建网站并设置自定义域名?
简单实现jsp分页
java获取注册ip实例
高端建站如何打造兼具美学与转化的品牌官网?
如何自定义建站之星网站的导航菜单样式?
Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区
香港服务器租用费用高吗?如何避免常见误区?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
Laravel如何配置任务调度?(Cron Job示例)
Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲
如何在云指建站中生成FTP站点?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
浅述节点的创建及常见功能的实现
Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程
Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程
Laravel如何为API编写文档_Laravel API文档生成与维护方法
详解阿里云nginx服务器多站点的配置
如何解决hover在ie6中的兼容性问题
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
Laravel如何创建自定义Facades?(详细步骤)
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
如何用景安虚拟主机手机版绑定域名建站?
linux top下的 minerd 木马清除方法
Laravel如何升级到最新版本?(升级指南和步骤)
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
C#如何调用原生C++ COM对象详解
b2c电商网站制作流程,b2c水平综合的电商平台?
Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
Laravel模型关联查询教程_Laravel Eloquent一对多关联写法
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
装修招标网站设计制作流程,装修招标流程?
微信推文制作网站有哪些,怎么做微信推文,急?


ut main && composer install && php artisan migrate:rollback