PHP и MySQL - Сравнение дат в конце срока

Я пытаюсь сделать систему, которая сравнивает конкретную дату ($date) с текущей датой (date('Y/m/d')), но мне нужно покрасить это $date когда он составляет одну неделю до фактической даты (около даты погашения). Я не знаю, понимаете ли вы меня, мой английский плохой...

Спасибо за чтение этого.

2 ответа

Сделайте это в запросе MySQL:

SELECT maturity_date,
       maturity_date < DATE_ADD(NOW(), INTERVAL 1 WEEK) AS near_maturity,
       ...

Тогда ваш код PHP может использовать if ($row['near_maturity') раскрасить дату.

Нечто подобное может работать:

date_default_timezone_set('America/Los_Angeles');
$date = DateTime::createFromFormat('m-d-Y', '04-15-2013');
$maturityDate = DateTime::createFromFormat('m-d-Y', '04-20-2013');
$maturityDateMinus10Days = DateTime::createFromFormat('m-d-Y', '04-10-2013');

if ($date > $maturityDateMinus10Days
    && $date < $maturityDate) {
    echo 'date is within 10 days of maturity 10';
}

Вы можете проверить это, скопировав и вставив сюда http://writecodeonline.com/php/

Ссылка PHP - добавить 1 день в формате даты мм-дд-гггг

Ссылка Как я могу проверить, превышает ли текущая дата / время установленную дату / время?

Другие вопросы по тегам