0

フォームは、MySQLデータベースからデータを取得しています。

$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>";
}
4

4 に答える 4

2
$dt = DateTime::createFromFormat('d.m.Y', $result->date);
$dt->modify('+1 day');
$result->date = $dt->format('d.m.Y');
于 2013-02-10T00:53:26.300 に答える
0
$result->date=$result->date+86400;  //<-- Try that
于 2013-02-10T00:52:51.573 に答える
0

たぶん、あなたはこれを使うことができます:

echo date('d.m.Y', strtotime("+1 day",strtotime('10-02-2013')));
于 2013-02-10T00:53:27.207 に答える
0

ドットを使用しているため、最初に爆発する必要がある場合があります。

$tmp = explode(".",$result->date);
echo date("d.m.Y", mktime(0, 0, 0, $tmp[1], $tmp[0]+1, $tmp[2]));
于 2013-02-10T00:58:14.700 に答える