Trabalho com datas em PHP: biblioteca Carbon

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

O que é Carbon?

Carbon é uma biblioteca popular para trabalhar com datas e horas em PHP. Ela é uma extensão da classe nativa DateTime e fornece uma API mais conveniente, legível e funcional. Carbon é frequentemente chamado de "DateTime para pessoas", pois simplifica manipulações de datas, formatação, cálculo de diferenças e trabalho com fusos horários.

Para que serve o Carbon?

As funções nativas do PHP para trabalhar com datas (date(), strtotime(), DateTime) frequentemente exigem código extenso e são difíceis de ler. O Carbon resolve esses problemas:

  • Métodos intuitivos: ->addDays(), ->subMonths(), ->diffForHumans().
  • Localização e saída em formatos "humanos" (por exemplo, "2 dias atrás").
  • Trabalho simples com fusos horários.
  • Objetos imutáveis (immutable) para operações seguras.

Instalação

Instale o Carbon via Composer:

composer require nesbot/carbon

Após a instalação, inclua a biblioteca:

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

Funções principais com exemplos

1. Criando uma data

// Data e hora atuais
$now = Carbon::now();

// A partir de uma string
$date = Carbon::parse('2025-03-15');

// A partir de um formato
$date = Carbon::createFromFormat('Y-m-d', '2025-03-15');

2. Manipulações com datas

$date = Carbon::now();

// Adicionar 7 dias
$date->addDays(7);

// Subtrair 1 mês
$date->subMonth();

// Início do mês
$date->startOfMonth();

3. Diferença entre datas

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

// Número de dias
$days = $start->diffInDays($end); // 364

// Formato humano
echo $start->diffForHumans($end); // "11 meses depois"

4. Formatação

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

5. Verificação de datas

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

Quando usar Carbon?

Carbon é ideal para:

  • Aplicações web que precisam exibir datas relativas ("agora mesmo", "2 horas atrás").
  • Sistemas de reserva, calendários e agendadores de tarefas.
  • APIs que exigem formatação flexível de datas para diferentes fusos horários.
  • Qualquer projeto onde o código com datas precise ser legível e de fácil manutenção.

Se você utiliza os frameworks Laravel ou Symfony, o Carbon já vem embutido neles por padrão.

Conclusão

Carbon é uma biblioteca indispensável para qualquer desenvolvedor PHP. Ela economiza tempo, torna o código mais limpo e elimina erros comuns ao trabalhar com datas. Instale-a no seu projeto hoje mesmo!

Recommendations