2013-02-10 163 views
0

表單正在從MySQL數據庫中檢索數據。如何將1天添加到gg.mm.aaaa日期

$query = $link->query("SELECT Date_ggmmaaaa AS Date 
         FROM table 
         WHERE Date_aaaammgg BETWEEN CURDATE() + 0 - INTERVAL 1 MONTH + 0 AND CURDATE() + 0"); 

while($result = $query->fetch_object) {  
    $date.= "<string>".$result->date."</string>"; 

}

現在,當我回聲$date,這始終是gg.mm.aaaa我想補充1天。

例如,如果我有:

09.02.2013 -> I want to echo 10.02.2013 

10.02.2013 -> I want to echo 11.02.2013 

我怎麼能達到呢?

編輯:

運作良好解決方案

$query = $link->query("SELECT date_ggmmaaaa AS date, test FROM table WHERE date_aaaammgg BETWEEN CURDATE() + 0 - INTERVAL 1 MONTH + 0 AND CURDATE() + 0 AND div1 = 0 AND div4 <> 0"); 

while($result = mysqli_fetch_array($query)) { 
     $dt = DateTime::createFromFormat('d.m.Y', $result['date']); 
     $dt->modify('+1 day'); 
     $result['date'] = $dt->format('d.m.Y'); 
     $date .= "<string>".$result['date']."</string>"; 
     $test .= "<number>".$result['test']."</number>"; 
} 
+0

ups:P我切了一些其他的東西 – Perocat 2013-02-10 00:50:40

回答

2
$dt = DateTime::createFromFormat('d.m.Y', $result->date); 
$dt->modify('+1 day'); 
$result->date = $dt->format('d.m.Y'); 
+0

works perfeclty,謝謝! – Perocat 2013-02-10 01:04:13

0
$result->date=$result->date+86400; //<-- Try that 
0

也許,你可以使用這個:

echo date('d.m.Y', strtotime("+1 day",strtotime('10-02-2013'))); 
0

因爲你用點你可能必須先爆炸:

$tmp = explode(".",$result->date); 
echo date("d.m.Y", mktime(0, 0, 0, $tmp[1], $tmp[0]+1, $tmp[2]));