Autor Zpráva
snazimse
Profil
Zdravím,

řeším takový problém s datumem.

Mám tento kod viz kod 1.Mám výpočet strtotime na příští rok.
Ale potřebuji mu nastavit DateTime.Jak to rešit? V Startdate to funguje perfektně.
Ale potřebuji i tak nastavit ten Enddate. Jenže když dám,viz kod 2,tak to samozřejmě nefunguje,jak to nastavit? Jako u Startdate? Díky všem!


//1
 $Prague= new DateTime('', new DateTimeZone('Europe/Prague'));

$Startdate = $Prague->format("Y-m-d H:i");

 $Enddate = date("Y-m-d H:i", strtotime(date("Y-m-d H:i", strtotime(date("Y-m-d H:i"))) . " + 365 day"));


 //2
 $Enddate = $Prague->format("Y-m-d H:i", strtotime($Prague->format("Y-m-d H:i", strtotime($Prague->format("Y-m-d H:i"))) . " + 365 day"));
Alphard
Profil
Co třeba použít metodu add() a ty šílené konstrukce vyhodit? Kdyžtak radši slovně popište, o co vám jde.
Úpně jsem zapomněl, zapomeňte na timestamp, pracujte s instancí Datetime.
snazimse
Profil
Alphard:
Děkuji za příspěvek! Jde mi pouze o to,získat formát,tedy současné datum + 365 dní.Jak to udělat,aby to bylo jednodušší,a praktické?


Díky!
Alphard
Profil
Stačí ta nejjednodušší varianta, ne?
$datetimeInstance = new DateTime('+ 365 day');
$string = (new DateTime('+ 365 day'))->format('Y-m-d H:i');
Ve starších verzích PHP skončí druhý řádek chybou a je třeba konstrukci rozepsat
$string = $datetiemInstance->format('Y-m-d H:i');
snazimse
Profil
Stačí ,daleko lepší!

Děkuji!

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0