Travailler avec les dates en PHP : la bibliothèque Carbon

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Qu'est-ce que Carbon ?

Carbon est une bibliothèque populaire pour travailler avec les dates et l'heure en PHP. C'est une extension de la classe intégrée DateTime et elle fournit une API plus pratique, plus lisible et plus fonctionnelle. Carbon est souvent appelé "DateTime pour les humains", car il simplifie les manipulations de dates, le formatage, le calcul des différences et le travail avec les fuseaux horaires.

Pourquoi utiliser Carbon ?

Les fonctions PHP intégrées pour travailler avec les dates (date(), strtotime(), DateTime) nécessitent souvent un code lourd et sont peu lisibles. Carbon résout ces problèmes :

  • Méthodes intuitives : ->addDays(), ->subMonths(), ->diffForHumans().
  • Localisation et affichage de formats "humains" (par exemple, "il y a 2 jours").
  • Travail simple avec les fuseaux horaires.
  • Objets immuables (immutable) pour un travail sécurisé.

Installation

Installez Carbon via Composer :

composer require nesbot/carbon

Après l'installation, incluez la bibliothèque :

<?php
require 'vendor/autoload.php';
use Carbon\\Carbon;

Fonctions principales avec exemples

1. Création d'une date

// Date et heure actuelles
$now = Carbon::now();

// À partir d'une chaîne
$date = Carbon::parse('2025-03-15');

// À partir d'un format
$date = Carbon::createFromFormat('Y-m-d', '2025-03-15');

2. Manipulations de dates

$date = Carbon::now();

// Ajouter 7 jours
$date->addDays(7);

// Soustraire 1 mois
$date->subMonth();

// Début du mois
$date->startOfMonth();

3. Différence entre dates

$start = Carbon::parse('2025-01-01');
$end = Carbon::parse('2025-12-31');

// Nombre de jours
$days = $start->diffInDays($end); // 364

// Format humain
echo $start->diffForHumans($end); // "11 mois après"

4. Formatage

$date = Carbon::now();
echo $date->toDateString(); // 2025-03-15
echo $date->format('l jS \\of F Y'); // Saturday 15th of March 2025

5. Vérification des dates

$date = Carbon::parse('2025-03-15');
var_dump($date->isWeekend()); // true (samedi)
var_dump($date->isFuture()); // false
var_dump($date->isPast()); // true

Quand utiliser Carbon ?

Carbon est idéal pour :

  • Les applications web où il faut afficher des dates relatives ("à l'instant", "il y a 2 heures").
  • Les systèmes de réservation, calendriers, planificateurs de tâches.
  • Les API nécessitant un formatage flexible des dates pour différents fuseaux horaires.
  • Tout projet où le code avec des dates doit être lisible et maintenable.

Si vous utilisez les frameworks Laravel ou Symfony, Carbon est déjà intégré par défaut.

Conclusion

Carbon est une bibliothèque incontournable pour tout développeur PHP. Elle fait gagner du temps, rend le code plus propre et évite les erreurs typiques lors du travail avec les dates. Installez-la dans votre projet dès aujourd'hui !

Recommendations