Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Cómo calcular la diferencia entre dos fechas con Twig

26 de junio de 2015

Hola a todos,

Quiero mostrar en pantalla el tiempo que lleva un usuario logueado, para eso tengo un date time que registra la ultima vez que el usuario se logueó y la fecha actual.

Lo que estoy haciendo es lo siguiente :

{{ "now"| date("Y-m-d H:i:s").diff(entity.user.lastlogin| date("Y-m-d H:i:s")) }}

Pero esto me arroja el siguiente error

Impossible to invoke a method ("diff") on a string variable ("2015-06-26 12:19:31")

Agradezco su colaboración.


Respuestas

#1

Buenas Miguel, para eso existe una extensión twig de fechas, yo personalmente no la he usado, y en la documentación, lo que no veo es como mostrar la diferencia en el formato deseado.

Quizas te sirva al menos como guia para lo que necesitas, Saludos!

@manuel_j555

26 junio 2015, 21:26
#2

@miguelplazasr el error que se te produce es doble: primero no es posible usar esa notación con Twig (.diff()) y segundo, no existe ningún filtro o función que haga eso en Twig.

En cualquier caso, si entiendo bien tu pregunta, esto no es algo que se pueda hacer con Twig. Para mostrar el tiempo que llega alguien conectado, tienes que usar código JavaScript que se ejecute en el navegador y se actualice continuamente. Por suerte existe una librería JavaScript espectacular que ya hace todo esto por tí: Moment.js

@javiereguiluz

27 junio 2015, 10:21