Полных дней между двумя датами в PHP? - PullRequest
2 голосов
/ 17 февраля 2011

У меня в таблице MySQL хранятся даты в формате гггг-мм-дд (или в типичном формате MySQL «дата»).Как я могу узнать, сколько полных дней осталось до того времени?

Как, например, если бы у меня было:

2011-03-05

Было бы сказано:

17 More Days

Ответы [ 3 ]

2 голосов
/ 17 февраля 2011

В PHP:

$days = (strtotime($date) - time()) / 86400;

В MySQL:

SELECT
    ((UNIX_TIMESTAMP(date) - UNIX_TIMESTAMP()) / 86400) AS days
FROM table;

Или как указано @coreyward (в MySQL):

SELECT
     DATEDIFF(UNIX_TIMESTAMP(date,NOW()) AS days
FROM table;
1 голос
/ 17 февраля 2011

В PHP 5 - Дата DIFF

http://php.net/manual/en/function.date-diff.php

Вам необходимо: (PHP 5> = 5.3.0)

Если вы не можете использовать эту функцию:

<?php
$today = strtotime("2011-02-03 00:00:00");
$myBirthDate = strtotime("1964-10-30 00:00:00");
printf("I'm %d days old.", round(abs($today-$myBirthDate)/60/60/24));
?>
0 голосов
/ 17 февраля 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...