найти разницу в дате в запросе mongodb в codeigniter - PullRequest
0 голосов
/ 11 июня 2018

Я хочу получить разницу между датой, которую я нашел из базы данных, а другой является текущая дата в обоих форматах (пример - 2018-06-09 11:02:49).

Как я могу найти разницумежду двумя датами в формате дней в CodeIgniter?

Ответы [ 3 ]

0 голосов
/ 11 июня 2018

Попробуйте это

$date1 = date_create("2018-06-09 11:02:49");
$date2 = date_create("2018-06-08 11:02:49");
$diff = date_diff($date1, $date2);
echo $diff->format("%a day");
0 голосов
/ 11 июня 2018

Надеюсь, это поможет вам:

Первый способ: вы можете использовать метод CI date_helper's timespan

$expired_date = '2018-06-09 11:02:49';
$post_date = strtotime($expired_date);
$now = time();
$units =1;
echo timespan($post_date, $now, $units);

Выходная мощность:

2 Days

Второй способ использования ядра php date_diff() метод

рабочая демонстрация: https://eval.in/1018721

//$expired_date = $query->row()->expired_at;
$expired_date = '2018-06-09 11:02:49';
$expired_date = date_create($expired_date);
$cdate = date_create('now');
$interval = date_diff($expired_date,$cdate);

//echo $interval->format('%a').PHP_EOL;
echo $interval->d;

Вывод:

2

Ссылка CI: https://www.codeigniter.com/user_guide/helpers/date_helper.html

Для более: http://php.net/manual/en/function.date-diff.php

0 голосов
/ 11 июня 2018

Если вы используете PHP 5.3>, это, безусловно, самый точный способ расчета разницы:

$earlier = new DateTime("2018-05-20 11:02:49");
$later = new DateTime("2018-06-11 11:02:49");

$diff = $later->diff($earlier)->format("%a day(s)");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...