制作PHP时间,在今天的时间添加一天

时间:2013-02-09 14:28:14

标签: php sql

我正在创建一个应用程序,用于存储用户的详细信息。其中一个字段是创建的时间和用户希望其帐户处于活动状态的天数。 我正在使用date('c')将时间存储在created表字段中。现在,如果用户选择他希望自己的帐户仅在一天内处于有效状态,那么我该如何将其中一天添加到当前date('c')并将其存储到我的下一个表格字段valid_till中。

稍后我计划检查当前date('c')是否在createdvalid_tll字段之间,然后用户帐户处于有效状态,否则帐户将被删除。

我想使用sql触发器来删除帐户。

3 个答案:

答案 0 :(得分:2)

您可以使用PHP的strtotime()

$valid_till = date('c', strtotime('+1 day'));

您可以在PHP手册的Supported Date and Time Formats部分中阅读有关可能格式的更多信息。

答案 1 :(得分:1)

为什么不使用SQL,取决于您使用的引擎,您可以使用类似create = NOW(),到期NOW()+ interval number_of_days,sql引擎为您处理日期,您不需要去创建PHP时间和使用它们的麻烦..

答案 2 :(得分:1)

这是一个基于SQL的解决方案。您可以将其转换为更新或插入。

SELECT
    `created`,
    CONCAT(
        DATE_FORMAT(
            DATE_ADD(SUBSTRING(`created`,1,10), INTERVAL 1 DAY), '%Y-%m-%d'
        ),
        RIGHT(`created`,15)
    ) AS 'valid_till'
FROM `some_table`

但我建议使用SQL UTC_TIMESTAMP()而不是PHP日期函数和一行TIMESTAMP数据类型而不是(VAR)CHAR,以便在SQL端更容易计算