Laravel 5.6 正式发布(文档翻译工作将在春节后启动)

翻译 Summer ⋅ 于 6个月前 ⋅ 最后回复由 wangwei4611 3周前 ⋅ 4061 阅读 ⋅ 原文地址

站点的翻译文章创建时,您将第一时间收到通知。

这是一篇社区协同翻译的文章,已完成翻译,更多信息请点击 协同翻译介绍

file

Laravel 5.6

Laravel 框架的下一个主要版本 Laravel 5.6 已经正式发布。这一版本拥有许多新特性,我们在这里重点展现一些比较突出的特性。完整的变更列表可以查看 changelog

日志改进

Laravel 5.6 版本最重要的特性是对日志的改进。项目启动时,v5.6 的日志配置从 config/app.php 文件移入新的  config/logging.php 文件中。

你可以通过配置 "channels" 为 "stack" 来指定多个处理器发送日志消息。例如,你可以发送所有的 debug 消息到系统日志中,并且发送错误日志到 slack 中。

阅读更多关于配置和自定义日志的内容,请访问 logging documentation.

茄子 翻译于 6个月前

查看其他 1 个版本

单一服务器任务调度

如果你有一个任务调度器运行在多个服务器上,那么任务将在每一台服务器上运行。现在,你可以使用  onOneServer() 方法为某个任务声明,它只需要在这些服务器中的一台运行。

$schedule->command('report:generate')
    ->fridays()
    ->at('17:00')
    ->onOneServer();

注意:你必须使用 memcached 或者 redis 作为默认的应用缓存驱动器,才能利用 Laravel 5.6 版本的单一服务器任务调度功能。

动态访问限制

Laravel 5.6 引入的 动态访问限制 ,提供了更多灵活性,并轻松对每个用户设置访问限制。

Route::middleware('auth:api', 'throttle:rate_limit,1')
    ->group(function () {
        Route::get('/user', function () {
            //
        });
    });

在上面的例子中,rate_limitApp\User 模型的一个属性,它限定了该用户在指定时间内可以发起的请求次数。

茄子 翻译于 6个月前

查看其他 1 个版本

广播频道类

你现在可以在 routes/channels.php 中使用 channel 类而不是使用 closures 了。

要创建一个 channel 类,Laravel 5.6 提供了一个新的 make:channel 命令:

php artisan make:channel OrderChannel

你可以在 routes/channels.php 像下面这样注册你的 channel:

use App\Broadcasting\OrderChannel;

Broadcast::channel('order.{order}', OrderChannel::class);
科大大 翻译于 6个月前

生成 API 资源控制器

你现在可以为 APIs 生成一个资源控制器了,它会去掉不必要的 create 和 edit 方法,因为这两个方法只适用于返回 HTML 页面, 如需要生成资源控制器,只需像下面这样在后面添加 --api :

php artisan make:controller API/PhotoController --api

Eloquent 日期的创建

您可以单独自定义日期或时间被创建的格式:

protected $casts = [
    'birthday' => 'date:Y-m-d',
    'joined_at' => 'datetime:Y-m-d H:00',
];

这种格式适用于模型序列化成数组或json数据。

科大大 翻译于 6个月前

Blade 组件别名

如果你的 Blade 组件存放在子目录中,现在起可以为它们起个别名以便使用。例如,假设一个 Blade 组件存放在 resources/views/components/alert.blade.php,你可以使用 component 方法将这个组件名从 components.alert 改为别名 alert:

Blade::component('components.alert', 'alert');

组件起了别名之后,就可以使用别名来渲染:

@component('alert')
    <p>This is an alert component</p>
@endcomponent
PHPer 翻译于 6个月前

Argon2 密码哈希

如果你在构建一个基于PHP7.2以上的应用的话,那么Laravel 5.6支持一种新的密码哈希算法规则。默认的应用哈希驱动通过新增的 config/hashing.php 配置文件来控制。

你可以在我们的文章中学习到更多的关于Laravel 5.6 Argon2 密码哈希算法的内容(https://laravel-news.com/laravel-agron2i).

UUID 方法

Illuminate\Support\Str 类中引入了两个新的生成唯一UUID的方法
引入了两个新的方法来生成 UUID。

// 两个方法都会返回 Ramsey\Uuid\Uuid 对象:
return (string) Str::uuid();

return (string) Str::orderedUuid();

orderedUuid 方法会生成一个时间戳最靠前的UUID,通过诸如 MySQL 的数据库来索引,更简单,也更高效。

PHPer 翻译于 6个月前

错误提示

我们最近写了一篇文章,关于在CLI中的错误提示信息包: Collision coming to Laravel 5.6,并将这个包加入了 dev 依赖中。它可以在控制台输出漂亮的错误提示信息:

Collision Package in Laravel 5.6

Bootstrap 4

在5.6中所有前端脚手架和示例 Vue 组件全都使用的Bootstrap 4。在测试版中,我们已经完全覆盖使用了Bootstrap 4,甚至还创建了一个为Laravel提供的预置。很高兴在将来能够看到 Laravel 5.6 和 Bootstrap 4 友谊的小船稳定航行下去!

li-luo-ao 翻译于 6个月前

了解更多

如果你需要升级你的Laravel项目到5.6版本,请参考这份 升级指南。我们努力缩短了在主要发行版本间的升级时间,从5.5升级到5.6大约需要10到30分钟。当然,实际需要的时间因人而异。

li-luo-ao 翻译于 6个月前

查看其他 1 个版本

原文地址:https://laravel-news.com/laravel-5-6

译文地址:https://laravel-china.org/topics/8030/of...


本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

本帖已被设为精华帖!
回复数量: 8
  • 厉害了,不到一小时就翻译完了. :+1:

    6个月前
  • 朕略显ぼうっと萌 PHP开发工程师 @ 河南索克网络

    最下面的图片显示不出来

    6个月前
  • 还是本社区的界面看着舒服

    6个月前
  • 喜大普奔,马上更新下看看。

    6个月前
  • 先恶补一下bs4。

    6个月前
  • hihuangwei 开发者 @ 淘威猫科技

    已成功升级到 Laravel 5.6

    6个月前
  • 简直漂亮~

    6个月前
  • wangwei4611 软件研发工程师 @ 华为技术有限公司

    您好,Summer大神,Laravel5.6已发布,请问API认证是选择Laravel Passport还是Dingo/Api+JWT?请指教!

    5个月前
您需要登陆以后才能留下评论!

Composer 中国全量镜像

Top 250 扩展包

Lumen 中文文档

Laravel 速查表

Laravel 中文文档

Laravel 项目开发规范

Laravel 开发环境部署

Composer 中文文档

Elasticsearch-PHP 中文文档

Lumen 中文文档

GraphQL PHP 中文文档

社区文档撰写指南

TDD 构建 Laravel 论坛笔记

PHP PSR 标准规范

PHP 设计模式全集

Dingo API 中文文档