Podrías tomar la IP del cliente y en base a dicho dato, detectar su zona horaria, así podrás mostrar el tiempo según la zona horaria de cada cliente. También podrías hacerlo con JavaScript, pero como es preferible que en la BD guardes la hora del servidor y no la del cliente, te convendría tomar su zona horaria con JavaScript y enviarla al lado del servidor, así la próxima vez que muestres la fecha y hora en la que el usuario publicó un mensaje, la formatearás según el dato de la zona horaria que se guardó previamente en la BD.
Por ejemplo, así obtendrías la zona horaria con JavaScript
:
Código Javascript
:
Ver originalvar timeString = new Date().toTimeString(),
regexp = /GMT(\-|\+)\d{4}/g;
console.log(regexp.exec()[0]); //En mi caso, muestra GMT-0500
Saludos