Tengo un pequeño problema restando dos objetos de fecha y hora de la otra. Yo uso el siguiente código:Perl Datetime problema de resta
$today = DateTime->now(time_zone => 'Europe/Berlin');
my $dt1 = DateTime-> new (
year => 2011,
month => 08,
day => 08,
hour => 1,
minute => 0,
second => 4,
time_zone =>'Europe/Berlin'
);
print "DT1 : $dt1\n";
print "today: $today\n";
my $sub = $today->subtract_datetime($dt1);
print "sub days: ".$sub->days."\n";
La declaración de impresión para DT1 y hoy en día impresiones:
DT1 : 2011-08-08T01:00:04
today: 2011-08-16T08:34:10
Pero si puedo imprimir después de la sustracción del valor $sub->days
Muestra en lugar de día .
¿Tengo un error en mi resta?
Muchas gracias por su ayuda.
Hola Anders, muchas gracias por su ayuda. – Stefan
No del todo. 'delta_days' todavía devuelve semanas y días, por lo que aún necesita usar' in_units'. La diferencia es que no devolverá meses, que no pueden convertirse en días. – ikegami
He resuelto que a través de una cláusula if para comprobar: si $ sub> semanas> 0 días y luego $ = $ sub> semanas * 7 + $ sub> días – Stefan