2017-01-27 2 views
1

Ich kann diese Woche Donnerstag erhalten, indem unterdiese Woche Donnerstag relative Daten PHP

$startdate = (new DateTime())->setTime(0,0,0); 
$startdate->setISODate($startdate->format("Y"), $startdate->format("W"), 4); 

tun, aber wenn ich ein relativen Datum versuchen bekommt es diese Woche Donnerstag vor oder am Donnerstag und wird nach Donnerstag am kommenden Donnerstag.

$startdate = (new DateTime('thursday'))->setTime(0,0,0); 

Ich habe auch versucht, „an diesem Donnerstag“ relative Datum, aber es funktioniert nicht zurückgeben, was ich würde excpect, verhält es sich wie „Donnerstag“. Ich kann das setISODate verwenden, aber ich bin nur neugierig, ob ich mit einem relativen Datum tun kann, da es einfacher wäre.

http://php.net/manual/en/datetime.formats.relative.php

Antwort

1

Versuchen Sie folgendes:

$startdate1 = (new DateTime('thursday last week'))->setTime(0,0,0); //2017-01-19 
$startdate2 = (new DateTime('thursday this week'))->setTime(0,0,0); //2017-01-26 
$startdate3 = (new DateTime('thursday next week'))->setTime(0,0,0); //2017-02-02 
+0

Dachte nicht, "diese Woche" dank zu nutzen! – tsukimi

Verwandte Themen