为日期赋值一个变量


Assinging a variable for date

我需要为今天的日期分配一个特定的数字,如1559,并根据此计算前一天和第二天。例如两天前是1557,昨天是1558,今天是1559,明天是1560,等等。有了这个,我将创建一个分页的日子与post方法。我的日期是YYYY-MM-DD格式,并存储在mySQL的日期变量中。我该如何将数字输入日期,并据此计算日期?

我的代码看起来像这样:

包括(connect.php);

    date_default_timezone_set("Etc/GMT+7");
    $timestamp= date("Y-m-d");
    $day1=1357;
    echo ('<form action="total_inf.php" method="post" name="inf_day">');
    for($i=0;$i<10;$i++)
    {
    $newdate=strtotime('-$i days',strtotime($timestamp));
    $newdate = date ( 'Y-m-d' , $newdate );
    $prevdays=$day1-$i;
    print ('<input type="submit" name="bugun" value="'.$prevdays.'">&nbsp;');
    }
    echo ('</form>');       
    $day_selected=$_POST[bugun];
    $sql1="SELECT * FROM userdata WHERE zaman='$timestamp'";
    $result1=mysql_query($sql1,$conn);
$current_date = new DateTime('2011-08-10');
$current_date->modify('+1 day'); //next day
$current_date->modify('-1 day');// prev day 
$other_date = new DateTime('1970-01-01'); //another date

参见DateTime参考

更新:

$day1 = new DateTime();
$day1->modify('-1357 days'); 
//if you need it to be some fixed date, use $day1= new DateTime("2011-08-01");
$now_date = new DateTime();
for($i=0;$i<10;$i++){
    $date_diff = $now_date->diff($zero_date);
    $prevdays = $date_diff->format("#a")-$i;
    print ('<input type="submit" name="bugun" value="'.$prevdays.'">&nbsp;');
}

适用于PHP>= 5.3.0。看到DateInterval:格式