как установить метку времени в будущем - PullRequest
1 голос
/ 03 апреля 2012

У меня вопрос по расчету времени.

У меня есть простая таблица, заполненная 3 столбцами. Столбец 1 будет передан NOW () в VALUE. Второй столбец должен содержать метку времени NOW () плюс 14 дней. Я никогда раньше не использовал функции времени, поэтому у меня есть некоторые проблемы с пониманием.

Так возможно ли, если у меня есть:

$copy = "INSERT INTO table (a, b, c) VALUES (NOW(), $var_for_b, $var_for_c)";

использовать для

$var_for_b 

легко

NOW()+14d

или мне нужно установить переменную с функцией времени / даты?

в случае использования переменной, что я могу там сделать?

$in_14_days =mktime(+14d)

и в моем третьем столбце просто должна быть разница между СЕЙЧАС () и СЕЙЧАС (+ 14d).

Извините за этот вопрос, но есть так много временных функций, что я не догадываюсь о различиях между ними.

Ответы [ 6 ]

4 голосов
/ 03 апреля 2012

Вы можете сделать now() + interval 14 day, чтобы установить дату в будущем.

, поэтому ваш оператор вставки становится:

$copy = "INSERT INTO table (a, b, c) VALUES (NOW(),now() + interval 14 day, $var_for_c)";
1 голос
/ 03 апреля 2012

Есть несколько способов сделать это с PHP и MySQL.

Я бы посоветовал сделать это, используя этот метод:

UNIX_TIMESTAMP(NOW() + INTERVAL 14 DAY)

Так это будет выглядеть так:

$copy = "INSERT INTO table (a, b, c) VALUES (UNIX_TIMESTAMP(NOW() + INTERVAL 14 DAY), $var_for_b, $var_for_c)";

Кроме того, вы можете использовать PHP для этого:

$future = strtotime('+14 days');
1 голос
/ 03 апреля 2012

Вы можете использовать date_add , чтобы MySQL вычислил вашу метку времени с date_add(now(), interval 14 day)

1 голос
/ 03 апреля 2012

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

NOW() + INTERVAL 14 DAY

1 голос
/ 03 апреля 2012

вы в основном добавляете время в секундах к текущей переменной

0 голосов
/ 03 апреля 2012

Попробуйте strtotime ("+ 14 день"); и посмотрим, если это то, что вы ищете.

(из руководства strtotime () )

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