2011-08-18 9 views
6

Si hago¿Por qué no coinciden las marcas de tiempo de PHP y Javascript?

alert(new Date(1313690400000))

devuelve: Thu Aug 18 2011 13:00:00 GMT-0500 (CDT)

embargo

, PHP

echo date('Y-m-d H:i:s', 1313690400000);

devuelve: 1951-12-14 05:50:24

+0

genial! gracias por el encabezado – MichaelDarrow

+0

Le ayudará a obtener respuestas en el futuro si acepta una respuesta haciendo clic en la marca de verificación al lado de uno. –

+0

genial, hizo clic;) – MichaelDarrow

Respuesta

18

JavaScript utiliza milisegundos como una marca de tiempo, mientras que PHP usa segundos. Como resultado, se obtiene fechas muy diferentes, ya que está fuera por un factor de 1000.

Así eliminar tres ceros en el lado de PHP:

echo date('Y-m-d H:i:s', 1313690400); 
6

funciones de fecha/hora de PHP utilizan el número de segundos desde la época, mientras que Javascript usa la cantidad de milisegundos. En su PHP func:

echo date('Y-m-d', 1313690400000/1000); 
6

Fecha Javascript es milisegundos a partir de época, mientras que la fecha de PHP utiliza marca de tiempo Unix que es en cuestión de segundos.

Para obtener la misma fecha en php, divida por 1000 primero

Cuestiones relacionadas