Лекция
Привет, Вы узнаете о том , что такое установка правильной временной зоны в php, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое установка правильной временной зоны в php, mysql часовые пояса в mysql , настоятельно рекомендую прочитать все из категории MySql (Maria DB).
Часовой пояс должен быть одноковм в MYSQL и PHP если он установлены на одном сервере
Установка временной зоны в mysql из php делается следующим образом:
|
query( "SET time_zone = 'Europe/Kiev'" ); |
или запросом
— SET GLOBAL time_zone = ‘Europe/Kiev’;
SET GLOBAL time_zone = '+2:00';
SET time_zone='EST5EDT';
Чтобы использовалось системное время, в MySQL нужно выполнить
|
SET GLOBAL time_zone = 'SYSTEM' ; SET time_zone = 'SYSTEM' ; |
Установка временной зоны в php для функций работы с датой и временем :
1
2
|
if (function_exists( 'date_default_timezone_set' )) date_default_timezone_set( 'Europe/Kiev' ); |
Временные зоны:
Europe/Kiev
Europe/London
Europe/Minsk
Europe/Moscow
Europe/Riga
Europe/Samara
Europe/Simferopol
Europe/Tallinn
Europe/Tiraspol
Europe/Uzhgorod
Europe/Volgograd
Asia/Yekaterinburg
Asia/Novosibirsk
Asia/Krasnoyarsk
Asia/Irkutsk
Asia/Kamchatka
Asia/Magadan
Asia/Sakhalin
Если нужно на постоянной основе установить временную зону то нуно изменять файлы конфгураций:
— в .htaccess или httpd.conf следует добавить строку вида
php_value date.timezone «Europe/Kiev»
— в php.ini строку вида
date.timezone = Europe/Kiev
Для mysql:
Прописать в конфигурационном файле timezone можно следующим способом (в таком случае потребуется перезагрузка):
/etc/my.cnf
|
default- time -zone = "Europe/Kiev" |
Можно поменять время и без перезагрузки, для этого сначала перенесем системные тайм зоны в MySQL следующим способом:
|
mysql_tzinfo_to_sql /usr/share/zoneinfo |mysql -u root mysql -p |
затем нужно ввести пароль рут пользователя MySql
Далее, мы уже можем обновить временную зону без появления ошибок типа:
|
ERROR 1298 (HY000): Unknown or incorrect time zone: |
Выполним обновление time_zone:
|
SET GLOBAL time_zone = 'Europe/Kiev' ; SET time_zone = 'Europe/Kiev' ; |
В MySQL также можно использовать системное время, это наверное даже лучше. Об этом говорит сайт https://intellect.icu . Чтобы изменить текущее системное время на сервере, нужно сделать:
1
|
cp /usr/share/zoneinfo/Europe/Kiev /etc/localtime |
Чтобы использовалось системное время, в MySQL нужно выполнить
1
2
|
SET GLOBAL time_zone = 'SYSTEM' ; SET time_zone = 'SYSTEM' ; |
Получить данные о часовом поясе в MYSQL
SELECT TIMEDIFF(NOW(), UTC_TIMESTAMP);
Чтобы проверить текущую временную зону, нужно выполнить команду:
|
SHOW VARIABLES LIKE '%zone%' ; SELECT @@global.time_zone, @@session.time_zone; |
Чтобы посмотреть текущее время сервера MySQL:
|
select current_timestamp(); |
Прочтение данной статьи про установка правильной временной зоны в php позволяет сделать вывод о значимости данной информации для обеспечения качества и оптимальности процессов. Надеюсь, что теперь ты понял что такое установка правильной временной зоны в php, mysql часовые пояса в mysql и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории MySql (Maria DB)
Из статьи мы узнали кратко, но содержательно про установка правильной временной зоны в php
Комментарии
Оставить комментарий
Базы данных - MySql (Maria DB)
Термины: Базы данных - MySql (Maria DB)