Почему у php и mysql разное время?
Установить часовой пояс для РНР

Глобально - в php.ini: date.timezone = Europe/Moscow
Локально - в едином для сайта скрипте настроек: date_default_timezone_set('Europe/Moscow');

Установить часовой пояс для Mysql

Глобально - в my.cnf: default-time-zone='+03:00'
Локально - запросом после коннекта: SET @@session.time_zone = '+03:00';

Часовые пояса (временны́е зоны) по разному настроены. Время то одно и тоже, а вот отображение разное.