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/carbonApó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 20255. 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()); // trueQuando 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!
Também na biblioteca
CMake para C++: guia completo com exemplos
Cache em Go (Golang): Redis e ferramentas alternativas
Geração de relatórios PDF em Go: visão geral das bibliotecas e exemplos de código
Aprendizado de Máquina em Java: visão geral das principais bibliotecas para desenvolvimento
Métricas Prometheus em Swift: monitoramento de aplicativos iOS/macOS