Я просматривал различные сообщения здесь, чтобы найти решение, но не могу найти его :(php, как сказать, если разница между двумя временами падает на сегодня, вчера или на другое?
, так что я за то, чтобы найти точную разницу между датами. В настоящее время у меня есть следующее код
$date = time();
$publishedDate = strtotime($item->published_time);
$datediff = $date - $publishedDate;
$daysListed = floor($datediff/(60*60*24));
if($daysListed >= 2)
{
$days = $daysListed." days ago";
}
elseif ($daysListed == 1)
{
$days = $daysListed." yesterday";
}
elseif ($daysListed < 1)
{
$days = "today";
}
, который делает очень хорошую работу, главный недостаток я должен с этим сказать, что мой пользователь отправляет сообщение в 23:59 вечера прошлой ночью выше код будет возвращать значение «сегодня», потому что $ DateDiff является вернувшись менее чем за 24 часа, даже если он был опубликован вчера. Есть ли более точный способ возврата правильного значения?
высоко ценю вашу помощь Луки
Используйте [DateTime объекты] (http://www.php.net/manual/en/class.datetime.php) и ' diff() ', а затем ответ находится в свойстве' days' полученного объекта DateInterval –
спасибо за ваши комментарии, Machavity моя проблема немного отличается от того, что обсуждалось в этом потоке. Марк Бейкер. Я довольно новичок, когда дело доходит до такого рода вещей, и я не смог найти то, что искал в ваших ссылках. – BBLJ84