Извините, если мой вопрос не так ясен вам. Я объясню это.
У меня есть таблица с именем POSTS, сообщения имеют имя столбца с датой (датой) и временем (временем), дата имеет формат: ymd и время h: i: s
Теперь я хотел бы получить что-то вроде: этот пост был опубликован.... секунд назад.
У меня есть пять переменных:
$date1 = $row['date'];
$time1 = $row['time'];
$postdate = ???
$today = CURRENT_DATE();
$minutes = ???
Мои вопросы: - Как конвертировать $ date1 и $ time1 в одну дату? - Как я могу рассчитать разницу между $ postdate и $ today?
Большое спасибо.
$date1 = $row['date'];
$time1 = $row['time'];
$postdate = $row['date']." ".$row['time'];
$today = time();
$minutes = round(($today - strtotime($postdate))/60, 2);
Поскольку значения $ date1 и $ time1 будут в строках, вы можете создать правильную строку значения времени даты, объединив их с промежутком между ними, что создаст строку времени даты в формате "ymd h: i: s".
Затем вам просто нужно преобразовать это значение в значение timestamp и вычесть его из текущей временной метки, чтобы получить разницу в количестве секунд. Разделите это на 60, и вы получите разницу в минутах.
Попробуйте следующий код
$now = strtotime(date('Y-m-d H:s')); // or your date as well
$your_date = strtotime("2015-02-20 10:32:44");
$datediff = $now - $your_date;
echo floor($datediff/60);