Tecnología

Inicio

La diferencia entre marcas de tiempo en PHP

PHP marcas de tiempo pueden ser útiles para calcular la diferencia entre dos puntos en el tiempo, como en el cálculo de fechas de nacimiento, el número de días hasta que una cuenta es debida o cuántas horas han pasado desde la última entrada de un usuario. Si sólo desea saber cuántos segundos han transcurrido entre dos marcas de tiempo, solo resta uno del otro. Más cálculos avanzados pueden lograrse mediante la conversión de las marcas de tiempo en objetos DateTime y el uso de las funciones de tiempo incorporado.

Estructura

PHP marcas de tiempo tienen un valor entero que representa el número de segundos han transcurrido entre el Epoch Unix (1 enero 1970 00:00:00 GMT) y la hora actual. La función "time ()" devuelve la marca de tiempo Unix actual. Un sello de tiempo típico PHP aparecerá como "1307826891."

La conversión de marcas de tiempo en DateTime

La conversión de las marcas de tiempo de PHP en objetos DateTime le permite hacer uso de las funciones de formato y de diferencia de tiempo avanzados de fecha y hora. Utilice la función "setTimestamp" añadiendo el siguiente código, donde $ timestamp "es su marca de tiempo de PHP:

$ Fecha-> setTimestamp ($ timestamp);

Un objeto DateTime se parece a "2005-08-15T15: 52: 01 + 0000" o "Lunes, 15-Aug-05 15:52:01 UTC."

Diferencia entre marcas de tiempo

Utilice la función "diff" de la Fecha y hora de calcular la diferencia entre dos marcas de tiempo que se han convertido en objetos DateTime. Por ejemplo:

$ $ = Diferencia date1-> diff ($ fecha2);

"$ Fecha1" y la fecha 2 $ "son los objetos de fecha y hora. El objeto devuelto tiene DateInterval campos que dan el número de años, meses, días, horas, minutos y segundos entre las dos fechas.

Formateo de la diferencia entre la hora Sellos

Dar formato a la diferencia de tiempo entre dos marcas de tiempo que se han convertido en objetos DateTime con la función de "formato", añadiendo el código:

$ = $ Difference_format diferencia-> formato ( '% Y-% m-% d% h-% i-% s');

Esto le dará la diferencia de "años-meses-días horas-minutos-segundos." Puede dar salida a esto con el código "echo $ diff_format ;."