Laravel 5.6正式成为laravel框架的的下一个版本! 这个版本有不少新的功能,咱们主要在这里介绍比较重要的.更多详细的变动列表请访问changelog(GitHub).php
在laravel 5.6版本中最大的特色是日志记录的改进。
对于初学者来讲,5.6版本的日志记录配置从config / app.php
文件移动到config / logging.php
。前端
您能够配置日志消息发送到多个处理程序的“进程”。
例如,您可能会将全部调试信息发送到系统日志,并将错误日志发送到冗余。laravel
阅读相关配置和自定义日志请访问下面这个连接 logging documentation.git
若是你有一个任务调度运行在多个服务器上,此任务能够运行在任意一个服务器.你还能够用‘onOneServer()’这方法指定这个任务运行在这些服务器的任意一个之中github
$schedule->command('report:generate') ->fridays() ->at('17:00') ->onOneServer();
注意:你必须使用 memcached
或者 redis
缓存驱动做为默认的缓存驱动.这样才可使用laravel5.6版本的单个服务器任务调度.redis
Laravel 5.6 指出 dynamic rate limiting 能够给你更多的灵活性和针对单个用户的访问限制:算法
Route::middleware('auth:api', 'throttle:rate_limit,1') ->group(function () { Route::get('/user', function () { // }); });
在上面的例子, rate_limit
属于 App\User
模型中的一个属性 ,用于指定特定的时间内容许的访问次数.数据库
你如今能够在 routes/channels.php
中使用 channel 类而不是使用 closures 了。json
要建立一个 channel 类,Laravel 5.6 提供了一个新的 make:channel
命令:bootstrap
php artisan make:channel OrderChannel
你能够在 routes/channels.php
像下面这样注册你的 channel:
use App\Broadcasting\OrderChannel; Broadcast::channel('order.{order}', OrderChannel::class);
你如今能够为 APIs 生成一个资源控制器了,它会去掉没必要要的 create
和 edit
方法,由于这两个方法只适用于返回 HTML 页面, 如须要生成资源控制器,只需像下面这样在后面添加 --api :
php artisan make:controller API/PhotoController --api
您能够单独自定义日期或时间被建立的格式:
protected $casts = [ 'birthday' => 'date:Y-m-d', 'joined_at' => 'datetime:Y-m-d H:00', ];
这种格式适用于模型序列化成数组或json数据。
若是你的 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
若是你在构建一个基于PHP7.2以上的应用的话,那么Laravel 5.6支持一种新的密码哈希算法规则。默认的应用哈希驱动经过新增的 config/hashing.php 配置文件来控制。
你能够在咱们的文章中学习到更多的关于Laravel 5.6 Argon2 密码哈希算法的内容(https://laravel-news.com/lara...
在 Illuminate\Support\Str
类中引入了两个新的生成惟一UUID的方法
引入了两个新的方法来生成 UUID。
// 两个方法都会返回 Ramsey\Uuid\Uuid 对象: return (string) Str::uuid(); return (string) Str::orderedUuid();
orderedUuid 方法会生成一个时间戳最靠前的UUID,经过诸如 MySQL 的数据库来索引,更简单,也更高效。
咱们最近写了一篇文章,关于在CLI中的错误提示信息包: Collision coming to Laravel 5.6,并将这个包加入了 dev
依赖中。它能够在控制台输出漂亮的错误提示信息:
在5.6中全部前端脚手架和示例 Vue 组件全都使用的Bootstrap 4。在测试版中,咱们已经彻底覆盖使用了Bootstrap 4,甚至还建立了一个为Laravel提供的预置。很高兴在未来可以看到 Laravel 5.6 和 Bootstrap 4 友谊的小船稳定航行下去!
升级你的laravel到5.6版本, 参考upgrade guide. Laravel 致力于使你的应用程式在版本之间更新花费更少的时间. 5.5 更新到5.6估计要花费10-30分钟. 显然,这个得根据你的项目应用程式来判断.
转自 https://laravel-china.org/top... ,文档翻译请关注社区 https://laravel-china.org/