PHP, если дата> 13 дней назад - PullRequest
0 голосов
/ 15 января 2009

Я вытягиваю строку из базы данных, и есть поле даты (y-m-d). Мне нужно создать оператор if, чтобы я мог что-то сделать, ЕСЛИ эта дата длиннее, чем 13 дней назад. Я уже узнал, как отобразить все результаты, которые длиннее 13 дней назад, если это поможет.

SELECT * FROM links WHERE (TO_DAYS(NOW()) - TO_DAYS(date))>13

Любая помощь будет принята с благодарностью.

Ответы [ 3 ]

3 голосов
/ 15 января 2009

В php вы можете использовать:

$date = '2008-11-05';
if (strtotime("now") > strtotime("+13 days", strtotime($date))) {
  //Do something
}
1 голос
/ 15 января 2009

Один из способов - преобразовать строку y-m-d во временную метку и посмотреть, не старше ли она 13 * 86400 секунд (86400 = нет секунд в дне)

$age=time() - strtotime($date);
if ($age > (13*86400))
{
     //do something
}
0 голосов
/ 15 января 2009

Вы не дали нам много, чтобы продолжить, но если вы используете следующий SQL (или эквивалент для вашего вкуса), вы получите дополнительный столбец с разницей в дате, названный days_diff:

SELECT *, DATEDIFF(datecolumn,CURDATE()) AS days_diff FROM links

Тогда вы можете получить доступ к $row["days_diff"] в своем PHP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...