Как получить правильный номер дня в моей стране?

#php #date

#php #Дата

Вопрос:

Я использую date('j') функцию в календаре. Проблема в том, что он возвращает неверный день. Например, в моей стране сегодня 17-й день, и эта функция возвращает 16-й день. Как это исправить?

Ответ №1:

Сообщите вашей системе, в каком часовом поясе вы находитесь, установив часовой пояс.

Комментарии:

1. @Lina И прочитайте это: Instead of using this function to set the default timezone in your script, you can also use the INI setting date.timezone to set the default timezone. — это более правильный способ.

2. Не все хостинговые компании разрешат доступ к php.ini. Это не всегда возможно.

Ответ №2:

По умолчанию date возвращает дату и время на основе времени сервера. Ознакомьтесь с выводом следующего:

 <?php
echo date(DATE_RSS);
?>
  

Это сообщит вам текущее точное время и дату, на которые установлен сервер.

Помните, сервер — это такой же компьютер, как и ваш собственный, только он, вероятно, расположен где-то на полпути по миру. Так же, как часы вашего компьютера установлены на местное время, в котором вы находитесь, часы сервера, вероятно, установлены на местное время, в котором он расположен.

Однако вы можете использовать date_default_timezone_set в PHP для установки времени и даты, которые вы хотите использовать в скрипте. Это изменит часовой пояс по умолчанию, используемый в этом скрипте.