Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Leguim en 7 Febrero 2020, 02:31 am



Título: [Resuelto] ¿Existe librería para calcular el tiempo pasado entre dos fechas?
Publicado por: Leguim en 7 Febrero 2020, 02:31 am
Es decir, yo tengo dos fechas y por medio de un algoritmo me devuelva el tiempo transcurrido...

"Hace un momento"
"Hace x minutos"
"Hace x horas"
"Hace x días"
"Hace x meses"
"Hace x años"

¿Existe alguna librería de php que haga algo parecido? más que nada para ver el código, porque ya tengo el mio pero me gustaría ver como se hace generalmente porque creo que no esta muy bien estructurado mi código...


Mod: Temas sobre PHP van al subforo de PHP.


Título: Re: ¿Existe alguna librería para calcular el tiempo pasado entre dos fechas?
Publicado por: EdePC en 7 Febrero 2020, 16:19 pm
Saludos,

- Para hallar la diferencia entre dos fechas puedes usar lo siguiente:

Código
  1. <?php
  2.  $d1 = new DateTime("2020-02-07 10:02:15");
  3.  $d2 = new DateTime("2021-07-08 11:14:15");
  4.  $diff = $d2->diff($d1);
  5.  
  6.  echo "Diferencia entre fechas"                 . "<br>";
  7.  echo "Fecha 1:  " . $d1->format('Y-m-d H:i:s') . "<br>";
  8.  echo "Fecha 2:  " . $d2->format('Y-m-d H:i:s') . "<br>";
  9.  echo "Años:     " . $diff->y                   . "<br>";
  10.  echo "Meses:    " . $diff->m                   . "<br>";
  11.  echo "Días:     " . $diff->d                   . "<br>";
  12.  echo "Horas:    " . $diff->h                   . "<br>";
  13.  echo "Minutos:  " . $diff->i                   . "<br>";
  14.  echo "Segundos: " . $diff->s                   . "<br>";
  15. ?>

-- Para hallar los Años o Meses o Días totales tendrías que convertirlos a lo que deseas usando el multiplicador de conversión adecuado.