Laravel Tutorials

Carbon Updates Coming to Laravel 5.8

Published
Carbon Updates Coming to Laravel 5.8 image

Thanks to Carbon maintainer @kylekatarnls you will be able to use Carbon 1.0 or Carbon 2.0 staring in Laravel 5.8. The update includes the ability to use Carbon immutable and even make your application use CarbonImmutable as the default.

⏱Thanks to some hard work by Carbon maintainer Kyle (https://t.co/kLkpb3rVBm) you will be able to use Carbon 1.0 OR 2.0 in Laravel 5.8… This allows support for CarbonImmutable. You can even configure your application to always use CarbonImmutable. ⏱ pic.twitter.com/JpKAaoABo9

— Taylor Otwell ????‍???? (@taylorotwell) October 3, 2018

According to the laravel/framework pull request you can choose which class you want for dates “such CarbonImmutable, Chronos or simply DateTime.”

If you want to learn more about migrating from Carbon 1 to Carbon 2, check out the Migrate to Carbon 2 section of the official documentation. The documentation has plenty of CarbonImmutable examples as well if you are interested in immutable date objects.

If you are curious if Carbon 2 will be supported in Laravel 5.7, only Carbon 1 is supported in Laravel 5.7. Supporting Carbon 2 required a lot of changes.

Another side-note about Carbon 2—localization has changed quite a bit and it would be worth reading the documentation to see the changes:

While Carbon 1 provided partial support and relied on third-party like IntlDateFormatter class and language packages for advanced translation, you now benefit of a wide internationalization support [in Carbon 2].

A while back I wrote about Working with Mutable and Immutable DateTime in PHP, so check it out if you need a bit of understanding in the difference in working with immutable vs. mutable dates with Carbon, Chronos, and PHP’s built-in DatetimeImmutable class.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

masteringlaravel logo
Laravel Code Review

Get expert guidance in a few days with a Laravel code review

Visit Laravel Code Review

The latest

View all →
NativePHP v4: Build Native iOS and Android UI in Blade image

NativePHP v4: Build Native iOS and Android UI in Blade

Read article
Laravel Lock: Distributed Locks for Models and Routes image

Laravel Lock: Distributed Locks for Models and Routes

Read article
Laravel Image Responses: Serve Resized Images From Routes image

Laravel Image Responses: Serve Resized Images From Routes

Read article
Pause All Laravel Queues During a Deploy image

Pause All Laravel Queues During a Deploy

Read article
Laravel Terminal UI for the artisan dev Command image

Laravel Terminal UI for the artisan dev Command

Read article
Pause All Queues and a New artisan dev UI in Laravel 13.25 image

Pause All Queues and a New artisan dev UI in Laravel 13.25

Read article