Время назад на 1 день вперед?
- Привет! Итак, у меня есть эта настройка системы, где она извлекает строку [created_at] в таблице "видео"и отображает ее в разделе "время назад". Проблема в том, что он не отображается правильно, что приводит меня в замешательство. Время в базе данных правильное и совпадает со временем в windows, но после преобразования с помощью функции timeAgo оно отображается почти так, как будто оно задерживается на 9 часов. Я опубликую свой код, а также скриншот времени в базе данных. Заранее благодарю вас за помощь, и я надеюсь, что это была глупая ошибка.
ПРИМЕР ИЗОБРАЖЕНИЯ:
Imgur: магия интернета[^]
Что я уже пробовал:
/* * * * * * * * * * * * * Index.php * * * * * * * * * * * * */ $curenttime= $row['created_at']; //which displays 2020-08-14 00:32:06 for the 1/only post submited $time_ago = strtotime($curenttime); echo timeAgo($time_ago); /* * * * * * * * * * * * * Returns Time Ago * * * * * * * * * * * * */ function timeAgo($time_ago){ $cur_time = time(); $time_elapsed = $cur_time - $time_ago; $seconds = $time_elapsed ; $minutes = round($time_elapsed / 60 ); $hours = round($time_elapsed / 3600); $days = round($time_elapsed / 86400 ); $weeks = round($time_elapsed / 604800); $months = round($time_elapsed / 2592000 ); $years = round($time_elapsed / 31536000 ); // Seconds if($seconds <= 60){ echo "$seconds seconds ago"; } //Minutes else if($minutes <=60){ if($minutes==1){ echo "one minute ago"; } else{ echo "$minutes minutes ago"; } } //Hours else if($hours <=24){ if($hours==1){ echo "an hour ago"; }else{ echo "$hours hours ago"; } } //Days else if($days <= 7){ if($days==1){ echo "yesterday"; }else{ echo "$days days ago"; } } //Weeks else if($weeks <= 4.3){ if($weeks==1){ echo "a week ago"; }else{ echo "$weeks weeks ago"; } } //Months else if($months <=12){ if($months==1){ echo "a month ago"; }else{ echo "$months months ago"; } } //Years else{ if($years==1){ echo "one year ago"; }else{ echo "$years years ago"; } } }