Я проверил этот код
<?php
//date_default_timezone_set('Europe/Helsinki');
//date_default_timezone_set('Europe/London');
date_default_timezone_set("America/New_York");
$date1 = date("Y-m-d");
$unixDate=time();
echo '[{ "DATE" : "'.$date1.'"},{ "UNIXTIME" : "'.$unixDate.'" }]';
?>
в нескольких сайтах (http://sandbox.onlinephpfunctions.com/ а также http://www.tutorialspoint.com/execute_php_online.php) включая мой локальный сервер и мой хостинг-сервер. Все они показывают UNIXTIME в секундах, даже если я изменяю date_default_timezone_set.
У вас есть идеи, почему это происходит?
time()
часовой пояс не зависит. Это означает, что он всегда будет возвращать время в секундах с 1 января 1970 года, независимо от того, как настроен часовой пояс. Это всегда занимает время UTC.
Функция time () всегда возвращает метку времени, которая не зависит от часового пояса (= UTC).