你需要升级到 Laravel 10 吗?如何升级?
你真的需要升级吗?
Laravel 9 仍然有效 并将拥有:
- 2023年8月8日之前的错误修复
- 2024年2月6日之前的安全修复
现在你知道了, 投资回报是否仍然值得?
升级到 Laravel 10 符合以下条件:
- 项目仍在积极开发中
- 你需要一个仅支持 Laravel 10 的包
- 你的项目经过了良好的测试如果
如果出现以下情况,请勿升级到 Laravel 10:
- 该项目最近没有为其编写任何新代码
- 处于稳定状态。为了升级而升级并不是投入时间和精力的最佳方式
- 由于缺乏测试,你的项目处于不稳定状态
如果你在阅读本文后考虑升级它,那就去做吧!这可能是正确的决定。
但如果你采取谨慎的方法,请利用团队为 Laravel 9 提供的两年支持来优先修复您的项目。
如何从 Laravel 9 升级到 Laravel 10?
符合以下要求
- PHP 8.1+ 并具有以下扩展:
- Ctype
- cURL
- DOM
- Fileinfo
- Filter
- Hash
- Mbstring
- OpenSSL
- PCRE
- PDO
- Session
- Tokenizer
- XML
- Nginx or Apache
如你所见,Laravel 10 不需要任何花哨的东西就可以正常工作。
确保第三方 Composer 包支持 Laravel 10
你用于构建项目的第三方包是否支持 Laravel 10?
要回答这个问题,请转到 Packagist, 输入包的名称,并查看它是否收到了最近的更新。在依赖项列表中,你应该会看到: "ìlluminate/something": "^10.0"
.
我们以 spatie/laravel-permissions为例,它是 Laravel 最受欢迎的包之一。
在下面的截图中,我们可以看到它支持 Laravel 7、8、9、10。
如果您看不到你的包已针对 Laravel 进行更新的任何迹象,请考虑在升级您的项目之前等待一段时间。
但有些人没有那么耐心。
幸运的是,在大多数情况下,为 Composer 包添加 Laravel 10支持是更改 composer.json 中的 illuminate/something 版本约束的问题,因为这几天的重大更新之间没有太多突破性的变化:
{
"require": {
…
- "illuminate/support": "^9.0",
+ "illuminate/support": "^10.0",
…
}
}
你可以创建一个 PullRequest 来帮助开源维护人员,或者分叉包并自己进行更改,直到作者有时间为止。
遵循升级指南
升级 Laravel 应用程序没有诀窍。你只需遵循 升级指南.
这些说明通常如下:
- 确保你的 PHP 版本满足最低要求。
- 更改给定依赖项的最低版本;
- 更改给定文件中的行;
- 方法更改了其参数或返回值。检查您是否正在使用它并进行必要的更改;
- 以前不推荐使用的类或方法已被删除,请使用其他方法(本指南始终为你提供替代方法)。
根据代码库的大小、测试的充分程度,还有需要升级的项目数量,这可能是一项耗时的任务。
幸运的是,你将在下面看到如何巧妙地帮助您几乎自动升级 Laravel 项目,简化你的 Web 开发生活。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
推荐文章: