$date1 = $date2 = new DateTime();
$date2->add(new DateInterval('P3Y'));
Ora $date1e $date2contengono la stessa data - tre anni da adesso. Vorrei creare due datetimes separati, uno che viene analizzato da una stringa e uno con tre anni aggiunti. Attualmente l'ho hackerato in questo modo:
$date2 = new DateTime($date1->format(DateTime::ISO8601));
ma sembra un orrendo hack. Esiste un modo "corretto" per copiare in profondità un oggetto DateTime?