在 PHP 中添加$Date天数

2022-08-30 06:09:36

我有一个日期作为mySQL查询的一部分返回,格式为2010-09-17

我想将变量$Date 2设置为$Date 5,如下所示:

$Date2 = $Date + 1

$Date3 = $Date + 2

等。。

所以它返回,等等...2010-09-182010-09-19

我试过

date('Y-m-d', strtotime($Date. ' + 1 day'))

但这给了我之前的日期。$Date

以“Y-m-d”格式获取日期的正确方法是什么,以便可以在其他查询中使用它们?


答案 1

你所要做的就是使用而不是像这样:daysday

<?php
$Date = "2010-09-17";
echo date('Y-m-d', strtotime($Date. ' + 1 days'));
echo date('Y-m-d', strtotime($Date. ' + 2 days'));
?>

它正确输出:

2010-09-18
2010-09-19

答案 2

如果您使用的是 PHP 5.3,则可以使用 DateTime 对象及其 add 方法:

$Date1 = '2010-09-17';
$date = new DateTime($Date1);
$date->add(new DateInterval('P1D')); // P1D means a period of 1 day
$Date2 = $date->format('Y-m-d');

查看 DateInterval 构造函数手册页,了解如何构造要添加到日期的其他时间段(2 天为、3 天为 等)。'P2D''P3D'

如果没有 PHP 5.3,你应该能够使用你的方式(我已经测试过了它,它同时适用于 5.1.6 和 5.2.10):strtotime

$Date1 = '2010-09-17';
$Date2 = date('Y-m-d', strtotime($Date1 . " + 1 day"));
// var_dump($Date2) returns "2010-09-18"

推荐