文章转发自专业的Laravel开发者社区,原始链接:https://learnku.com/laravel/t...
Laravel 团队今天宣布 Laravel 6.0 版本正式发布,该版本的发布标志着 laravel 框架开始使用语义化版本,此外,该版本还包含了对 Laravel Vapor 的支持、优化了授权响应、任务中间件、懒集合、子查询优化以及很多其它细节优化。
下面是一些有关 Laravel 6.0 版本的新特性:
Laravel 6.0 是新的 LTS 版本
Laravel 6.0 的发布标志着Laravel新的 LTS (译者注 Long-Term Support 长期技术支持)版本,该版本的错误修复将持续到2021年9月3日,安全修复将持续到2022年9月3日。之前的LTS版本 Laravel 5.5(安全修复会持续到2020年8月30日)。以下是最新版本的 Laravel 的更新表和最新版本的日期:
版本号 | 发布 | Bug修复 | 安全修复 |
---|---|---|---|
V1 | 2011 年 6 月 | – | – |
V2 | 2011年 9 月 | – | – |
v3 | 2012 年 2 月 | – | – |
v4 | 2013 年 5 月 | – | – |
5.0 | 2015 年 2 月 4 日 | 2015年 8 月 4 日 | 2016 年 2 月 4 日 |
5.1 (LTS) | 2015年6月9日 | 2017年6月9日 | 2018年6月9日 |
5.2 | 2015年12月21日 | 2016年6月21日 | 2016年12月21日 |
5.3 | 2016年8月23日 | 2017年2月23日 | 2017年8月23日 |
5.4 | 2017年1月24日 | 2017年7月24日 | 2018年1月24日 |
5.5 (LTS) | 2017年8月30日 | 2019年8月30日 | 2020年8月30日 |
5.6 | 2018年2月7日 | 2018年8月7日 | 2019年2月7日 |
5.7 | 2018年9月4日 | 2019年2月4日 | 2019年9月4日 |
5.8 | 2019年2月26日 | 2019年8月26日 | 2020年2月26日 |
6.0 (LTS) | 2019年9月3日 | 2021年9月3日 | 2022年9月3日 |
语义版本号
Laravel 发布通知阐明了 Laravel 6.0 及以后版本的语义控制:
Laravel 框架 (Laravel /framework)包 遵循语义版本控制标准。这使得框架与已经遵循此版本控制标准的其他第一方Laravel 包保持一致。Laravel 的发布周期将保持不变。
优化授权响应
在此之前,围绕授权策略提供自定义错误信息给终端用户非常困难,Laravel6提供 Gate::inspect
方法来授权策略响应:
$response = Gate::inspect('view', $flight);
if ($response->allowed()) {
// 用户已授权...
}
if ($response->denied()) {
// 用户未授权,返回响应信息
echo $response->message();
}
任务中间件
任务中间件允许中间件到队列任务中对其进行过滤:
// 在任务类中定义中间件方法
public function middleware()
{
return [new SomeMiddleware];
}
// 分发任务时可通过through指定中间件
SomeJob::dispatch()->through([new SomeMiddleware]);
使用中间件可以避免在任务类的handle()
方法中编写与主体业务逻辑无关的代码. 想了解更多请查看文章: Laravel 6 的任务中间件.
惰性集合
对于处理大量数据的集合(包括 Eloquent 模型集合),惰性集合是一个改变(既定的)游戏规则者。一个新的 lighting \Support\LazyCollection
类利用 PHP 的生成器在处理大型数据集时保持低内存。查看Lazy Collections 文档了解关于这个令人印象深刻的新特性的更多细节!
Eloquent 子查询增强
了解更多关于Jonathan Reinink 's对子查询的贡献,请参阅他在Laravel News上的文章——Laravel 6.0中出色的子查询增强功能。此外,请查看Jonathan在他的Laracon talk Eloquent 性能模式中关于使用子查询(以及其他技术)的精彩演讲。
Laravel UI
Laravel 5.x 自带的前端脚手架,现在被分离成一个独立的laravel/ui Composer包。这允许在主框架之外,方便迭代UI脚手架。
如果你想用传统的Bootstrap/Vue/搭建,你会运行以下命令:
composer require laravel/ui
php artisan ui vue --auth
了解更多
你现在可以使用 laravel CLI 工具启动新的 Laravel 6 应用程序:
laravel new my-app
以下是一些与 Laravel 6 相关的资源:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。