Как найти количество дней между полевой датой и текущей датой, используя php - PullRequest
0 голосов
/ 05 марта 2012

Я пытался найти ответ для своей проблемы, не могу найти его, пожалуйста, найдите ниже код, где он работает нормально, если указана дата ввода для $ start.Но когда то же самое делается с использованием поля даты без времени, выдается ошибка.

    <?php
    $start = new DateTime('2011-10-12');
    $today = new DateTime();
    $days = round(abs($today->format('U') - $start->format('U')) / (60*60*24));
    echo $days;
    ?>

Это повторяется 146 .

Но если я заменю $ start с полем таблицы , например:

    $start = $demurage2[DC_date];
    echo $start;
    $today = new DateTime();
    $dcdate = round(abs($today->format('U') - $start->format('U')) / (60*60*24));
    echo $dcdate;

Ошибка: Неустранимая ошибка: вызов функции-члена формата () для не-объект в /home/tech17/public_html/svga/invoice-detail.php в строке 490

Я пробовал echo только $ start , он показывает правильную дату из таблицы: 2012-01-17.

1 Ответ

0 голосов
/ 05 марта 2012

Ваш $ start не является объектом класса DateTime во втором примере, поэтому, конечно, он не работает. Как хранится дата? Технически это может работать, но это сильно зависит от значения $ demurage2 ['DC_date'].

$start=new DateTime($demurage2['DC_date']);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...