0

0

laravel怎么升级到最新的主版本_laravel升级到最新主版本教程

穿越時空

穿越時空

发布时间:2025-11-06 08:47:02

|

360人浏览过

|

来源于php中文网

原创

升级laravel主版本需先检查php版本、更新composer并备份项目;修改composer.json中laravel包版本后运行composer update;推荐使用laravel-shift工具自动处理部分升级;手动对比配置文件、调整服务提供者及替换弃用api;最后清除缓存并运行测试确保应用正常。

laravel怎么升级到最新的主版本_laravel升级到最新主版本教程

如果您正在维护一个基于 Laravel 的项目,并希望利用其最新的功能、性能改进和安全更新,则需要将框架升级到最新的主版本。Laravel 的主版本升级并非简单的包更新,而是一个涉及多个步骤的迁移过程,需要仔细处理以避免破坏现有应用。以下是详细的升级操作指南。

本文运行环境:MacBook Pro,macOS Sonoma

一、准备工作与依赖检查

在开始升级之前,必须确保当前开发环境满足新 Laravel 版本的系统要求。这包括 PHP 版本、必要的扩展以及第三方包的兼容性。忽略此步骤可能导致升级后应用无法启动或出现难以预料的错误。

1、通过终端执行 php -v 命令,确认 PHP 版本符合目标 Laravel 版本的要求。例如,Laravel 11 需要 PHP 8.2 或更高版本。

2、检查并更新 Composer 到最新稳定版,使用命令 composer self-update

3、查阅官方升级文档,了解目标版本废弃了哪些功能或进行了重大更改,以便提前修改代码。

4、备份整个项目文件和数据库,这是进行任何重大变更前的关键预防措施。

二、修改 Composer 依赖项

升级的核心是更新 composer.json 文件中的 Laravel 核心包版本约束,然后让 Composer 解析并安装新的依赖树。此步骤会下载新版本的框架代码及其兼容的依赖包。

1、打开项目的 composer.json 文件,找到 "require" 部分。

2、将所有以 "laravel/..." 开头的包的版本号更新为目标主版本。例如,从 Laravel 10 升级到 11,需将 "laravel/framework": "^10.0" 修改为 "laravel/framework": "^11.0"

3、同时检查并更新其他官方 Laravel 包(如 laravel/sanctum, laravel/tinker)至与新主版本兼容的版本。

4、保存文件后,在项目根目录运行 composer update 命令,Composer 将开始安装新版本的包。

三、执行升级辅助工具

Laravel 官方提供了一个名为 laravel-shift 的自动化工具,它可以分析您的代码库并自动应用许多常见的升级更改,从而显著减少手动工作量。虽然不是强制性的,但强烈推荐使用。

1、访问 laravel-shift.com 网站并注册或登录您的账户。

MartCnEnterPrise企业版
MartCnEnterPrise企业版

除了有一半电子商务的全部基本功能外,还增加了“模版自由更换”“程序在线自动更新升级”“分布式搜索”等特色功能 主要功能: ·网站的基本信息设置,部分数据以XML方式同服务器发生交互。 ·可自行关闭和开启网站,方便维护,可自定维护时显示的代码。 ·可自定义站点的关键字和描述,方便搜索引擎找到您的网站。 ·可自定义商品图片、新闻图片的上传目录和预览图片的大小。 ·提供自己设置网站的邮件发送服务器SM

下载

2、创建一个新的升级任务,选择当前版本作为源版本,目标主版本作为目标版本。

3、按照指引授权 laravel-shift 访问您的 GitHub 或 GitLab 仓库,或者上传一个项目压缩包。

4、提交任务后,工具会分析代码并生成一个包含所有建议更改的 Pull Request (PR),您可以在合并前审查这些更改。

四、手动调整配置与代码

自动化工具无法处理所有情况,某些重大变更需要开发者手动干预。这通常涉及更新配置文件、调整服务提供者或修改已弃用的 API 调用。

1、将旧版本的配置文件与新版本 config/ 目录下的默认文件进行对比,合并必要的更改。可以使用 git diff 或专门的文件比较工具。

2、检查 app/Providers/ 目录下的服务提供者,确认没有使用已被移除的门面或类。

3、根据官方升级指南,查找并替换代码中所有被标记为已弃用的功能。例如,Laravel 11 移除了对字符串和数组辅助函数的支持,需要将其替换为对应的类方法调用。

4、更新测试代码,确保所有单元测试和功能测试仍然通过。

五、清理与验证

完成代码和配置的修改后,必须彻底清理应用缓存并运行测试,以确保升级后的应用能够正常工作。

1、执行 Artisan 命令 php artisan config:clearphp artisan route:clear 来清除配置和路由缓存。

2、运行 php artisan view:clear 清除编译的 Blade 模板。

3、执行项目的完整测试套件,命令通常是 phpunitpest,确保所有测试均通过。

4、在本地开发环境中手动测试应用的核心功能,确认无回归问题。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
laravel组件介绍
laravel组件介绍

laravel 提供了丰富的组件,包括身份验证、模板引擎、缓存、命令行工具、数据库交互、对象关系映射器、事件处理、文件操作、电子邮件发送、队列管理和数据验证。想了解更多laravel的相关内容,可以阅读本专题下面的文章。

338

2024.04.09

laravel中间件介绍
laravel中间件介绍

laravel 中间件分为五种类型:全局、路由、组、终止和自定。想了解更多laravel中间件的相关内容,可以阅读本专题下面的文章。

290

2024.04.09

laravel使用的设计模式有哪些
laravel使用的设计模式有哪些

laravel使用的设计模式有:1、单例模式;2、工厂方法模式;3、建造者模式;4、适配器模式;5、装饰器模式;6、策略模式;7、观察者模式。想了解更多laravel的相关内容,可以阅读本专题下面的文章。

686

2024.04.09

thinkphp和laravel哪个简单
thinkphp和laravel哪个简单

对于初学者来说,laravel 的入门门槛较低,更易上手,原因包括:1. 更简单的安装和配置;2. 丰富的文档和社区支持;3. 简洁易懂的语法和 api;4. 平缓的学习曲线。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

382

2024.04.10

laravel入门教程
laravel入门教程

本专题整合了laravel入门教程,想了解更多详细内容,请阅读专题下面的文章。

133

2025.08.05

laravel实战教程
laravel实战教程

本专题整合了laravel实战教程,阅读专题下面的文章了解更多详细内容。

82

2025.08.05

laravel面试题
laravel面试题

本专题整合了laravel面试题相关内容,阅读专题下面的文章了解更多详细内容。

72

2025.08.05

composer是什么插件
composer是什么插件

Composer是一个PHP的依赖管理工具,它可以帮助开发者在PHP项目中管理和安装依赖的库文件。Composer通过一个中央化的存储库来管理所有的依赖库文件,这个存储库包含了各种可用的依赖库的信息和版本信息。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

161

2023.12.25

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

6

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 12.7万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.3万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 1.0万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号