[Laravel 5.8] Laravel 5.8 的 Carbon 更新
感谢 Carbon 的维护者 @kylekatarnls,你可以从 Laravel 5.8 开始使用 Carbon 1.0 或 Carbon 2.0 版本。此次升级包含使用 Carbon 不可变的特性,甚至可以将 CarbonImmutable 设置为应用的默认值。
根据 laravel/framework pull request,你可以根据需要,选择处理日期的类,如 CarbonImmutable
, Chronos
或者简单的 DateTime
。
如果你想了解更多Carbon 1迁移到Carbon 2的信息, 请查阅这部分的官方文档 Migrate to Carbon 2 。如果你对日期对象的不可变处理,官方文档已列出大量 CarbonImmutable
例子。
Laravel 5.7是否支持Carbon 2?Laravel 5.7只支持Carbon 1,因为支持Carbon 2 需要较多的调整。
关于 Carbon 2 的另一个侧面说明 —— 本地化 已经发生了很大变化,值得去阅读文档来查看全部变更:
虽然 Carbon 1 提供了部分支持并依赖于类似 IntlDateFormatter 类和语言包这样的第三方包实现高级翻译,现在你可以在 [Carbon 2] 中获得更广泛的国际化支持。
前段时间我写了 在 PHP 中使用 Mutable 和 Immutable DateTime,如果你需要理解一些在 Carbon,Chronos 和 PHP 内置的 DatetimeImmutable
中使用可变与不可变日期的区别,请查看文章。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
@Summer 把其它几个 News 也顺便翻译了吧😄。
5.8 release 了?
@wujunze 后天,2.26