【问题标题】:PHP strtotime and MySQL date formatPHP strtotime 和 MySQL 日期格式
【发布时间】:2013-02-06 23:30:37
【问题描述】:

我试图让我的函数在我发送它的日期上增加 1 天,但我无法弄清楚如何匹配 MySQL 格式。我目前有:

$result = mysql_query($query);
$lastdate = mysql_result($result, 0, 'date');
$date = strtotime(date("Y-m-d", strtotime($lastdate)) . " +1 day");

我知道$date = 行在某处不正确,但我不太了解该功能。由于 MySQL 存储日期的方式,它以 YYYY-mm-dd 格式给出日期($query 只是获取数据库中的最后一个日期)。
我猜使用 strtotime 函数不是正确的做法,或者我的格式/想法都错了。
感谢您的帮助,这让我很烦:(

【问题讨论】:

  • 您的“日期”列中的数据类型是什么?整数?日期?日期时间?

标签: php mysql date


【解决方案1】:

我想你想要$date = date("Y-m-d", strtotime("+1 day", $lastdate))

您可能需要使用strtotime 转换$lastdate

【讨论】:

    【解决方案2】:

    您可以将 86400 秒添加到 strtotime() 的结果中,因为它返回自 1970 年 1 月 1 日以来的整数秒数,一天有 86400 秒。

    $lastdate = '2011-10-11 22:07:11';
    $date = date("Y-m-d", strtotime($lastdate) + 86400);
    echo $date;
    

    输出:

    2011-10-12
    

    【讨论】:

    • 你可以这样做。 . .但不清楚你在做什么。
    • 个人认为很清楚;但我认为它是一天中的秒数。可以写成(60*60*24),也可以加评论让其更清晰。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多