PHP дата возвращает неправильное время

Следующий скрипт возвращает неверное время после звонкаdate_default_timezone_set("UTC")

<code><?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>";

?>
</code>

Часовой пояс на сервереBST, Итак, что должно произойти, это то, что второй вызов «дата»; должен вернуться через 1 час после первого звонка. Он действительно возвращается через 5 часов после первого.

Должен отметить, что сервер изначально был настроен с часовым поясом EDT (UTC-4). Это было изменено на BST (UTC +1) и сервер был перезапущен.

Я не могу понять, если это проблема PHP или проблема с сервером.

Ответы на вопрос(3)

Ваш ответ на вопрос