The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

Date

jenssegers/date image

Date stats

Downloads
7.6M
Stars
1,811
Open Issues
6
Forks
248

View on GitHub →

A date library to help you work with dates in different languages

Laravel Date Package Summary

The Laravel Date package, created by Jens Segers, is an extension of the popular Carbon library, designed to add robust multi-language support for date and time operations within Laravel applications. This package leverages the comprehensive localization capabilities of Carbon to provide developers with an easy way to handle date-time values across different languages.

Key Features

  • Multi-language Support: Harnesses Carbon's language files to render date and time information in various languages.
  • Extended Carbon Methods: Includes enhanced versions of Carbon's methods such as format, diffForHumans, parse, and createFromFormat to support multi-language contexts.
  • Automatic Localization: Integrates seamlessly with Laravel, automatically adapting to the application's locale settings.
  • Additional Tools: Offers new methods like timespan and aliases like ago (for diffForHumans) to simplify common tasks.

Installation

To install the package, use Composer:

composer require jenssegers/date

Laravel Integration

For Laravel 5.5 and newer, the package uses auto-discovery to register the service provider and facade. For older versions, you need to manually add the service provider and facade in config/app.php:

'providers' => [
Jenssegers\Date\DateServiceProvider::class,
];
 
'aliases' => [
'Date' => Jenssegers\Date\Date::class,
];

Usage

Set the locale and use Date methods to manipulate and display date-time values:

use Jenssegers\Date\Date;
 
// Set locale
Date::setLocale('nl');
 
// Display current time in Dutch
echo Date::now()->format('l j F Y H:i:s'); // Outputs: zondag 28 april 2013 21:58:16
 
// Time difference in a human-readable format
echo Date::parse('-1 day')->diffForHumans(); // Outputs: 1 dag geleden
 
// Timespan method example
echo $date->timespan(); // Outputs: 3 months, 1 week, 1 day, 3 hours, 20 minutes

Supported Languages

The package includes extensive language support, matching the locales supported by Carbon. Examples include English, Spanish, Dutch, and many more. See the full list in the package documentation or on the Carbon documentation site.

Additional Information

While the Date package extends Carbon's functionality, all original methods and functionalities of Carbon are still accessible. For detailed usage of Carbon’s methods, refer to the Carbon documentation.

Contributions related to language translations should be directed to the Carbon repository.


For developers looking to handle date and time values in multiple languages within Laravel, the Date package offers an efficient and straightforward solution, building on the solid foundation provided by Carbon.

jenssegers photo

Engineering Manager & Solution Architect at OTA Insight


Jenssegers Date Related Articles

Query Builder Expression Aliases in Laravel 12.48 image

Query Builder Expression Aliases in Laravel 12.48

Read article
Restrict User Actions with Time-Based Sanctions Using Laravel Prohibitions image

Restrict User Actions with Time-Based Sanctions Using Laravel Prohibitions

Read article
Docker Support in Laravel VS Code Extension v1.4.2 image

Docker Support in Laravel VS Code Extension v1.4.2

Read article
Laravel Deadlock: Manage Technical Debt with Expiring Code Markers image

Laravel Deadlock: Manage Technical Debt with Expiring Code Markers

Read article
Async Request Cancellation Updates in Inertia v2.3.10 image

Async Request Cancellation Updates in Inertia v2.3.10

Read article
Laravel Boost v1.8.10 Released With New AI Prompts and Livewire v4 Support image

Laravel Boost v1.8.10 Released With New AI Prompts and Livewire v4 Support

Read article
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS Starter Kit

SaaSykit is a Multi-tenant Laravel SaaS Starter Kit that comes with all features required to run a modern SaaS. Payments, Beautiful Checkout, Admin Panel, User dashboard, Auth, Ready Components, Stats, Blog, Docs and more.

SaaSykit: Laravel SaaS Starter Kit
PhpStorm logo

PhpStorm

The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

PhpStorm
Harpoon: Next generation time tracking and invoicing logo

Harpoon: Next generation time tracking and invoicing

The next generation time-tracking and billing software that helps your agency plan and forecast a profitable future.

Harpoon: Next generation time tracking and invoicing
Laravel Cloud logo

Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Laravel Cloud
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell
Shift logo

Shift

Running an old Laravel version? Instant, automated Laravel upgrades and code modernization to keep your applications fresh.

Shift