# DateInterval::format

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

DateInterval::format — Formatea el intervalo

### Descripción

public DateInterval::format(string `$format`): string

Formatea el intervalo.

### Parámetros

`format`

  Los siguietes caracteres están reconocidos en el parámetro de cadena `format`. Cada carácter de formato debe ser prefijado con un signo de porcentaje (`%`).
  Carácter `format` | Descripción | Valores de ejemplo
  --- | --- | ---
  `%` | Literal `%` | `%`
  `Y` | Años, numérico, al menos 2 dígitos empezando con 0 | `01`, `03`
  `y` | Años, numérico | `1`, `3`
  `M` | Meses, numérico, al menos 2 dígitos empezando con 0 | `01`, `03`, `12`
  `m` | Meses, numérico | `1`, `3`, `12`
  `D` | Días, numérico, al menos 2 dígitos empezando con 0 | `01`, `03`, `31`
  `d` | Días, numérico | `1`, `3`, `31`
  `a` | Número total de días como resultado de una operación con DateTime::diff(), o de lo contrario `(unknown)` | `4`, `18`, `8123`
  `H` | Horas, numérico, al menos 2 dígitos empezando con 0 | `01`, `03`, `23`
  `h` | Horas, numérico | `1`, `3`, `23`
  `I` | Minutos, numérico, al menos 2 dígitos empezando con 0 | `01`, `03`, `59`
  `i` | Minutos, numérico | `1`, `3`, `59`
  `S` | Segundos, numérico, al menos 2 dígitos empezando con 0 | `01`, `03`, `57`
  `s` | Segundos, numérico | `1`, `3`, `57`
  `R` | Signo "`-`" cuando es negativo, "`+`" cuando es positivo | `-`, `+`
  `r` | Signo "`-`" cuando es negativo, vacío cuando es positivo | `-`, ``

### Valores devueltos

Devuelve el intervalo formateado.

### Notas

> Nota:

> El método DateInterval::format() no recalcula los excesos en cadenas de hora ni en segmentos de fecha. Esto es así porque no es posible analizar valores como `"32 días"` el cual podría ser interpretado como cualquier cosa desde `"1 mes y 4 días"` hasta `"1 mes y un día"`.

### Ejemplos

Ejemplo #1 Ejemplo de DateInterval

`<?php
$intervalo = new DateInterval('P2Y4DT6H8M');
echo $intervalo->format('%d días');
?>`

El resultado del ejemplo sería:

    4 días

Ejemplo #2 DateInterval y excesos

`<?php
$intervalo = new DateInterval('P32D');
echo $intervalo->format('%d días');
?>`

El resultado del ejemplo sería:

    32 días

Ejemplo #3 DateInterval y DateTime::diff() con los modificadores %a y %d

`<?php
$enero = new DateTime('2010-01-01');
$febrero = new DateTime('2010-02-01');
$intervalo = $febrero->diff($enero);
// %a imprimirá el múmero total de días.
echo $intervalo->format('%a total de días')."\n";
// Mientras que %d sólo imprimirá el múmero total de días no cubiertos por el
// mes.
echo $intervalo->format('%m mes, %d días');
?>`

El resultado del ejemplo sería:

    31 total days
    1 month, 0 days

### Ver también

- DateTime::diff() - Devuelve la diferencia entre dos objetos DateTime