Método format da classe DateInterval
O método format da classe DateInterval converte um intervalo de tempo em uma representação de string de acordo com o formato especificado. Ele aceita como parâmetro uma string de formato contendo caracteres especiais e retorna a string formatada.
Sintaxe
public DateInterval::format(string $format): string
Caracteres especiais
| Especificador | Descrição | Exemplo |
|---|---|---|
%Y |
Número de anos (mínimo 2 |
01, 12 |
%y |
Número de anos (sem preenchimento com zeros) | 1, 12 |
%M |
Número de meses (mínimo 2 |
01, 11 |
%m |
Número de meses (sem preenchimento com zeros) | 1, 11 |
%D |
Número de dias (mínimo 2 |
01, 31 |
%d |
Número de dias (sem preenchimento com zeros) | 1, 31 |
%H |
Número de horas (mínimo 2 |
01, 23 |
%h |
Número de horas (sem preenchimento com zeros) | 1, 23 |
%I |
Número de minutos (mínimo 2 |
01, 59 |
%i |
Número de minutos (sem preenchimento com zeros) | 1, 59 |
%S |
Número de segundos (mínimo 2 |
01, 59 |
%s |
Número de segundos (sem preenchimento com zeros) | 1, 59 |
%R |
Sinal do intervalo (+ ou -) | +, - |
%r |
Sinal do intervalo com indicação explícita (- se negativo) | , - |
%% |
Símbolo de percentagem | % |
Exemplo
Formatando um intervalo em dias e horas:
<?php
$interval = new DateInterval('P2DT5H');
echo $interval->format('%d days, %h hours');
?>
Resultado da execução do código:
'2 days, 5 hours'
Exemplo
Formatando um intervalo em representação completa:
<?php
$interval = new DateInterval('P1Y3M5DT7H10M');
echo $interval->format('%y years %m months %d days %h hours %i minutes');
?>
Resultado da execução do código:
'1 years 3 months 5 days 7 hours 10 minutes'
Exemplo
Formatando um intervalo com zeros à esquerda:
<?php
$interval = new DateInterval('PT5H3M');
echo $interval->format('%H:%I');
?>
Resultado da execução do código:
'05:03'
Veja também
-
classe
DateInterval,
que representa um intervalo de tempo -
método
DateTime::format,
que formata data e hora -
função
date,
que formata uma timestamp