Я извлекаю самые последние прослушанные треки с last.fm и помещаю их на мой сайт.
Проблема в том, что времена извлекаются в формате UTC-0 в формате UTS, и при сравнении их с временем BST кажется, что время истекло, чтобы вычислить нечеткую отметку времени («около 5 минут назад», «около часа назад»). и т.д.).
Есть ли способ решить эту проблему, чтобы время всегда совпадало с BST / GMT и корректировалось при входе и выходе из летнего времени?
Вот фрагмент кода PHP, который я сейчас использую, что приводит к тому, что время истекает через час.
$now = time(); // use this so all times are to the same second
$tz = getenv("TZ"); // save local setting so we can reset it later
putenv("TZ=Europe/London");
$trackPlayedAt = date('d M Y H:i:s', $track->date->uts);