elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [Pregunta]: Manipular dos timestamp
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: Manipular dos timestamp  (Leído 2,325 veces)
Leguim


Desconectado Desconectado

Mensajes: 720



Ver Perfil
[Pregunta]: Manipular dos timestamp
« en: 4 Agosto 2019, 04:30 am »

Buenas noches...
Quisiera restar dos timestamp o ver mejor dicho si esto es posible...
Mi código me esta dando errores vendría siendo este:

Código
  1. $timestamp_now = date('Y-m-d H:i:s');
  2. $timestamp_old = '2019-08-03 23:22:50';
  3. $timestamp_res = $timestamp_now - $timestamp_old;
  4.  
  5. echo $timestamp_res.' = '.$timestamp_now.' - '.$timestamp_old;
  6.  

Explicando... estoy restando el timestamp actual por uno cualquiera más antiguo... y que este me cree un nuevo timestamp basado en el resultado de esa operación...
No se muy bien si esto es posible...

Gracias!...


En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.057



Ver Perfil
Re: [Pregunta]: Manipular dos timestamp
« Respuesta #1 en: 4 Agosto 2019, 17:02 pm »

Saludos,

- No creo que te sea posible obtener siempre una DateTime válido a partir de la Diferencia de dos DateTime, supongamos que quieres saber la Diff entre la fecha de Mañana y de Hoy:

'2019-08-05 09:53:00' - '2019-08-04 09:53:00'

-- Según tu planteamiento quisieras obtener un DateTime válido de este resultado:

'0000-00-01 00:00:00'

-- Pero esto no es un formato DateTime válido, ya que no existe un mes 00 (empieza en enero->01), por esto en PHP a este tipo de resultados los llama DateInterval que es un Objeto que especifica un número de años, meses, días, horas, minutos, segundos, etc.

- Claro que puedes trabajar con el DateInterval y crear un String con el formato '0000-00-01 00:00:00', pero no pasa de ser un String que nunca llegará a ser un DateTime válido.


En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: [Pregunta]: Manipular dos timestamp
« Respuesta #2 en: 4 Agosto 2019, 18:07 pm »

Restar dos timestamps significa que vas a obtener el número de segundos entre los dos timestamps. Ese número de segundos lo puedes usar para construir una fecha, pero será la fecha con los segundos añadidos al epoch time (00:00:00 Thursday, 1 January 1970). Dudo mucho que eso sea lo que tu quieres. De todas formas lo que tu tienes ahí no son timestamps son fechas en formato de string.
En línea

@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.397


Turn off the red ligth


Ver Perfil WWW
Re: [Pregunta]: Manipular dos timestamp
« Respuesta #3 en: 5 Agosto 2019, 01:55 am »

Haz una funcion para pasar de Años, meses, dias, horas, minutos y segundos a segundos.

Segundos += (minutos*60) + (horas*3600) + (dias...)

Si se te excede del tamaño máximo que puedes tratar como entero, trátalo como texto para almacenarlo y haz una función para operar cifra por cifra independientemente y vas añadiendo el resultado al principio del string sumándole lo que lleves de la operación final.

Así obtienes los segundos de diferencia entre una fecha y otra y desde ahí ya puedes obtener ese valor para tratarlo como quieras. Crear una fecha a partir de la original, o simplemente ir dividiendo para tener algo rollo:
827282927291 segundos o:
0 años 4 meses 13 dias 23horas 58 minutos 31 segundos.
Fecha de referencia: 2019 años 5 meses 3 dias 0horas 1minuto 10 segundos.

Fecha de tiempo transcurrido desde año 0: 2019 años 9 meses 16 dias ...

Guardas cada valor como elemento de un array junto con los símbolos como elementos e imprimes el array.
Fecha actual: 2019-Sept-16 23:58:31
En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
SQL timestamp
Bases de Datos
OssoH 1 4,154 Último mensaje 27 Noviembre 2009, 00:14 am
por seba123neo
PHP... Guardando un timestamp
Bases de Datos
dimitrix 4 6,442 Último mensaje 18 Julio 2011, 15:04 pm
por dimitrix
[Pregunta]: Timestamp MYSQL se EDITA SOLO sin que yo le diga
Desarrollo Web
Leguim 2 1,772 Último mensaje 12 Abril 2019, 08:38 am
por Leguim
[Resuelto] [Pregunta]: Crear un timestamp 0000-00-00 00:00:00
PHP
Leguim 3 1,755 Último mensaje 19 Septiembre 2019, 01:05 am
por MinusFour
[Pregunta]: ¿Cómo puedo manipular un entero y un decimal en conjunto en una consulta SQL?
Desarrollo Web
Leguim 1 2,298 Último mensaje 24 Diciembre 2020, 12:23 pm
por #!drvy
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines