Laravel 5.8 正式发布了,一起来看看有哪些新特性吧!
Laravel 5.8 在美国时间2019年2月26号正式发布了,该版本引入了一些新特性以及最新的bug修复,并对框架核心代码做了优化。
这些新特性包括:
PHP dotenv
Laravel 5.8 集成了 PHP dotenv 3.0,并引入了如下相关新特性:
- 当我们试图读取和修改部分环境变量时更加灵活;
- 支持多行变量;
- 不再清除变量值两边的空格,配置什么就会得到什么;
- 可以尝试从路径列表中查找 dotenv 文件,而不是单个路径;
- 更强大的变量名验证以便避免静默失败和模糊错误
Carbon v2
Laravel 5.8 中可以使用 Carbon v1 或 Carbon v2,包括 CarbonImmutable
,甚至将其设置为默认值。在 Carbon v2 中,本地化功能做了很大的调整,从而相比 v1 而言提供更好的国际化支持。
缓存有效期调整
对现有项目影响较大的一个更新恐怕就是缓存有效期的调整,传递到缓存方法的表示有效期的整型数字单位从分钟变成了秒,如果你的代码中使用了缓存有效期,需要检查一下并做修改,以符合你编写代码时的预期。此外,你还可以使用 DateInterval
实例实现相同的目的。
废弃字符串和数组辅助函数
对于 Laravel 5.8 中废弃字符串和数组辅助函数这件事,不要过于惊慌,与使用相应的类方法相比,辅助函数提供的价值很小(除了你所习惯的代码风格),并且 Laravel 官方也计划以可选扩展包的方式发布这些辅助函数,如果你想要继续使用它们的话,可以通过扩展包的方式引入。
自动策略类解析
从 Laravel 5.8 开始,只要授权策略类和模型类在框架约定的位置,就不必在 AuthServiceProvider
类中显式注册它们。
如果你不想安装约定路径来存放模型类和授权类,可以注册一个回调来实现策略类的自动解析:
Gate::guessPolicyNamesUsing(function ($class) {
// Do stuff
return $policyClass;
});
更多新特性
从今天开始,Laravel 5.7 将不再进行 bug 修复和功能更新,不过,还是会进行安全更新直到 2019 年 8 月。
Laravel 5.8 是最新的稳定版本(不是LTS版本),并且会接受 bug 修复和功能更新直到 2019 年 8 月,安全更新则会持续到 2020 年 2 月。
了解更多
更多 Laravel 5.8 的功能特性更新,请参考新版特性,相应的升级文档请查看升级指南。
注:本文翻译整理自 Laravel News。
2 Comments
昨天laravel学院的服务器挂了。。
是的 备案问题 被阿里云封了 然后我把整站迁移到国外了