La siguiente secuencia de comandos está devolviendo el momento equivocado después de que llamo date_default_timezone_set("UTC")
fecha de PHP volver momento equivocado
<?PHP
$timestamp = time();
echo "<p>Timestamp: $timestamp</p>";
// This returns the correct time
echo "<p>". date("Y-m-d H:i:s", $timestamp) ."</p>";
echo "<p>Now I call 'date_default_timezone_set(\"UTC\")' and echo out the same timestamp.</p>";
echo "Set timezone = " . date_default_timezone_set("UTC");
// This returns a time 5 hours in the past
echo "<p>". date("Y-m-d H:i:s", $timestamp) ."</p>";
?>
La zona horaria en el servidor es BST. Entonces, lo que debería pasar es que la segunda llamada a 'fecha' debería devolver un tiempo de 1 hora detrás de la primera llamada. De hecho, está regresando un tiempo 5 horas detrás del primero.
Debo señalar que el servidor se configuró originalmente con la zona horaria EDT (UTC -4). Eso se cambió a BST (UTC +1) y el servidor se reinició.
No puedo entender si esto es un problema de PHP o un problema con el servidor.
Lo que es date_default_timezone_get() que muestra * antes * de cambiar la zona horaria? – BenOfTheNorth
Zona horaria: Europa/Londres – gargantuan
¿Y cuál es el comando de la terminal 'date' de su servidor? –