Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Проблема с функцией date()

Проблема с функцией date()


     09.11.2012    функция, date()    Общие вопросы, Общие вопросы по PHP    5981

вопрос
Всем привет. Подскажите пожалуйста как решить проблему с функцией date() ?

У меня на сайте в профиле такая ошибка

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Helsinki' for 'EET/2,0/no DST' instead in /home/expert/data/www/video-romantika.ru/engine/modules/netw.php on line 3

и она не только на файле netw.php она на всех файлах, в которых встречается функция date() как решить данную проблему не знаю и очень надеюсь на Вашу помощь. Я менял фйлы php и tpl в результате ошибка осталась. Помогите пожалуйста :(

Ответил: Sander


Я поражаюсь человеческой лени!
Лень перевести и осмыслить текст написанный в ошибке!
Это не безопасно полагаться на часовой пояс системы настройки. Вам * рекомендовано * использовать date.timezone настройки или date_default_timezone_set () функцию. В случае, если Вы использовали любой из тех методов, и Вы все еще получаете это предупреждение, вы, скорее всего, неправильно указали часовой пояс. Мы выбрали 'Europe/Helsinki' for 'EET/2,0/no DST' вместо /home/expert/data/www/video-romantika.ru/engine/modules/netw.php on line 3


Зайдите в настройки сервера и задайте часовой пояс. Параметр date.timezone. Сейчас сервер использует часовой пояс по умолчанию Europe/Helsinki но рекомендует задать его в настройках вручную.
Отчего эта проблема вообще вылезла. Потому что в вашем модуле программист поленился задать второй параметр для функции date(), в которой указывается "отсчет" в секундах начиная с 1970-01-01 00:00:00

7 комментариев

guardian_x
Юзер

guardian_x - 9 ноября 2012 07:15 -

У меня такая же ситуация, но при создании резервной копии базы. date.timezone в php.ini указана явно, а проблема не пропадает! тут то что делать?

Sander
PHP-developer

Sander - 9 ноября 2012 13:30 -

В случае, если Вы использовали любой из тех методов, и Вы все еще получаете это предупреждение, вы, скорее всего, неправильно указали часовой пояс

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

pavel31
Юзер

pavel31 - 9 ноября 2012 16:37 -

Уважаемый Sander Вы если хотите помочь помогайте, а критиковать не надо, не все такие умные как Вы.
Где и как можно настроить дату и временную зону что бы не было ошибки??
У меня нет пароля с логином от сервера :(

Sander
PHP-developer

Sander - 9 ноября 2012 18:52 -

Я и так дал исчерпывающий ответ...
Ищите файл php.ini, там примерно такой код:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone =

Последню строку раскомментировать и задать ей значение:
date.timezone = "Europe/Moscow"


Возможно потребуется перезапустить сервер.

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

pavel31
Юзер

pavel31 - 9 ноября 2012 20:21 -

Спасибо, осталось только до сервера добратся.

Sander
PHP-developer

Sander - 9 ноября 2012 21:33 -

Как вариант в тексте ошибки так же предлагают задать это значение через php функцию:
@date_default_timezone_set("Europe/Moscow");

Ставить в index.php перед
define ( 'DATALIFEENGINE', true );


Но не гарантирую, что в случае с DLE это поможет. Лучше либо в сервере задать, либо функции date() не использовать без пустого второго параметра.

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

pavel31
Юзер

pavel31 - 9 ноября 2012 22:25 -

Sander, спасибо Вам большое за помощь! Ошибка пропала.Благодарю

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх