Método format de la clase DateInterval
El método format de la clase DateInterval convierte un intervalo de tiempo en una representación de cadena de acuerdo con el formato especificado. Toma como parámetro una cadena de formato que contiene caracteres especiales y devuelve la cadena formateada.
Sintaxis
public DateInterval::format(string $format): string
Caracteres especiales
| Especificador | Descripción | Ejemplo |
|---|---|---|
%Y |
Cantidad de años (mínimo 2 |
01, 12 |
%y |
Cantidad de años (sin relleno de ceros) | 1, 12 |
%M |
Cantidad de meses (mínimo 2 |
01, 11 |
%m |
Cantidad de meses (sin relleno de ceros) | 1, 11 |
%D |
Cantidad de días (mínimo 2 |
01, 31 |
%d |
Cantidad de días (sin relleno de ceros) | 1, 31 |
%H |
Cantidad de horas (mínimo 2 |
01, 23 |
%h |
Cantidad de horas (sin relleno de ceros) | 1, 23 |
%I |
Cantidad de minutos (mínimo 2 |
01, 59 |
%i |
Cantidad de minutos (sin relleno de ceros) | 1, 59 |
%S |
Cantidad de segundos (mínimo 2 |
01, 59 |
%s |
Cantidad de segundos (sin relleno de ceros) | 1, 59 |
%R |
Signo del intervalo (+ o -) | +, - |
%r |
Signo del intervalo con indicación explícita (- si es negativo) | , - |
%% |
Símbolo de porcentaje | % |
Ejemplo
Formatear un intervalo en días y horas:
<?php
$interval = new DateInterval('P2DT5H');
echo $interval->format('%d days, %h hours');
?>
Resultado de la ejecución del código:
'2 days, 5 hours'
Ejemplo
Formatear un intervalo en representación completa:
<?php
$interval = new DateInterval('P1Y3M5DT7H10M');
echo $interval->format('%y years %m months %d days %h hours %i minutes');
?>
Resultado de la ejecución del código:
'1 years 3 months 5 days 7 hours 10 minutes'
Ejemplo
Formatear un intervalo con ceros a la izquierda:
<?php
$interval = new DateInterval('PT5H3M');
echo $interval->format('%H:%I');
?>
Resultado de la ejecución del código:
'05:03'
Ver también
-
clase
DateInterval,
que representa un intervalo de tiempo -
método
DateTime::format,
que formatea fecha y hora -
función
date,
que formatea una marca de tiempo