У меня есть время и дата из моей БД, и я попытался повторить то же самое в форме «минуты / часы назад».
например, если у меня есть текст, отправленный 2 дня назад, он показывает как «2 дня назад», принимая время и дату.
Код работает нормально, однако он не меняется для разных временных областей.
мой код выглядит так:
<?php
$mytimestring = '2018-02-27 07:57:19';
function humanTiming ($time)
{
$time = time() - $time; // to get the time since that moment
$time = ($time<1)? 1 : $time;
$tokens = array (
31536000 => 'year',
2592000 => 'month',
604800 => 'week',
86400 => 'day',
3600 => 'hour',
60 => 'minute',
1 => 'second'
);
foreach ($tokens as $unit => $text) {
if ($time < $unit) continue;
$numberOfUnits = floor($time / $unit);
return $numberOfUnits.' '.$text.(($numberOfUnits>1)?'s':'');
}
}
echo humanTiming( strtotime($mytimestring) );
?>
Это работает только для данного времени и не меняется для IST или любого другого.
Любая помощь очень ценится ..
Задача ещё не решена.
Других решений пока нет …