2016-05-30 4 views
0

Когда я пишу эту строку кода на местном, выход будет так:Почему функция time() возвращает разные значения на разных серверах?

echo time(); // 1464605083 

И когда я пишу в на 3v4l(онлайн PHP оболочки) выход будет так:

echo time(); // 1339412843 

Как вы видите, между этими выходами существует огромное различие. Что не так? И как я могу их синхронизировать?


Примечание: Я использую Xampp на моем местном.

+2

взглянуть [здесь] (http://stackoverflow.com/questions/ 13978567/time-returns-different-timestamps-based-on-server), похоже, очень похож на вашу текущую проблему. – Andrew

+0

@DainisAbols Я так думаю, но как я могу изменить часовой пояс на своем локальном? Это зависит от моей ОС * (windows) * или PHP имеет свой собственный часовой пояс? –

+0

'05/30/2016 @ 10:44 am (UTC)' vs '06/11/2012 @ 11:07 am (UTC)' не похож на проблему с часовым поясом. Вы проверяли даты системы на обеих машинах? –

ответ

1

Это временная зона будет варьироваться в зависимости от используемых вами серверов. Если вы хотите использовать тот же часовой пояс на своем сервере. Используйте

date_default_timezone_set('timezonename')

+0

Спасибо .. +1 –

+0

Добро пожаловать. Если это было полезно. Отметьте как правильный ответ. Приветствия –

1

Веб-сервер, на котором вы тестируете это, имеет полностью установленное системное время.

Если вы посмотрите на дату своего тестового сценария (рядом с полем заголовка), вы увидите, что он был сохранен на @ Mon Jun 11 2012 11:07:23.

Ваша временная метка 1339412843 переводит на 06/11/2012 @ 11:07am (UTC).

Итак, время сервера просто неверно. Проверяйте свой скрипт где-нибудь еще, если время критическое.

+0

Я вижу, но как установить значение по умолчанию для моего PHP? в каком файле конфигурации? * Php.ini *? –

+0

Ну ладно, спасибо. +1 –

1

использование часовых поясов я надеюсь, что это работа ...

<?php 
date_default_timezone_set('America/New_York'); 
echo $date= time() ; 
?> 
+0

Спасибо .. upvote –

2

Если время вы вернулись из кода не в нужное время, это, вероятно, потому, что ваш сервер находится в другой стране или установить на другой часовой пояс.

Итак, если вам нужно, чтобы время было правильным в определенном месте, вы можете установить часовой пояс для использования.

В приведенном ниже примере задает временную зону для «Америка/Триатлон», а затем выводит текущее время в указанном формате:

<?php 
date_default_timezone_set("America/New_York"); 
echo "The time is " . date("h:i:sa"); 
?> 
+1

Спасибо .. +1 –

Смежные вопросы