Função PHP date_interval_format ()

Definição e Uso

o date_interval_format()function é um alias de DateInterval :: format () . Esta função aceita um intervalo e uma string de formato como parâmetros e formata o intervalo fornecido no formato especificado.

Sintaxe

date_interval_format($interval, $format)

Parâmetros

Sr. Não Parâmetro e Descrição
1

interval (Mandatory)

Este é um objeto do DateInterval que você precisa formatar.

2

format (Mandatory)

Este é um valor de string, especificando o formato.

Valores Retornados

Esta função retorna o intervalo formatado

Versão PHP

Esta função foi introduzida pela primeira vez no PHP versão 5.3 e funciona com todas as versões posteriores.

Exemplo

O exemplo a seguir demonstra o uso da função date_interval_create_from_date_string () -

<?php
  $interval = new DateInterval('P25DP8MP9Y');
  $format = "%d days;
  $res = date_interval_format($interval, $format);
  print($res);  
?>

Isso produzirá o seguinte resultado -

25 days

Exemplo

Ao contrário de outras funções de data / hora, date_interval_format () não recalcula pontos de transporte nas strings de data e hora. Portanto, se você passar valores de data / hora além de seus limites, eles serão formatados como estão -

<?php
   $interval = new DateInterval('P45M');
   $format = "%m months";
   $res1 = date_interval_format($interval, $format);
   print($res1); 
  
   $res2 = date_interval_format(new DateInterval('PT30H'), "%h hours");
   print("\n".$res2);
?>

Isso produzirá o seguinte resultado -

45 months
30 hours

Exemplo

O exemplo a seguir calcula a diferença entre uma determinada data e a data atual e formata o resultado usando a função date_interval_format -

<?php
   $date1 = date_create("25-09-1989");
   $date2 = date_create("1-09-2012");
   $interval = date_diff($date1, $date2);
   $res = date_interval_format($interval, '%Y years %d days');
   print($res);  

?>

Exemplo

<?php
print(date_interval_format(new DateInterval('P12D'), "%d days")."\n");
print(date_interval_format(new DateInterval('P7M'), "%m months")."\n");
print(date_interval_format(new DateInterval('P12Y'), "%y years")."\n");
print(date_interval_format(new DateInterval('PT9H'), "%h hours")."\n");
print(date_interval_format(new DateInterval('PT45S'), "%s seconds")."\n");
?>

Isso produzirá o seguinte resultado -

22 years 7 days
12 days
7 months
12 years
9 hours
45 seconds