Bonjour,

J'utilise le module DateTime et je souhaite calculer la durée entre deux dates,

j'ai utilisé le même exemple que sur la FAQ du module mais je n'arrive pas a avoir la durée comme indiqué dans la FAQ.

Voici mon code de test :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
#!/bin/perl
 
use DateTime;
 
my $date1 = DateTime->new( year   => 2007,
                          month  => 11,
                          day    => 24,
                          hour   => 22,
                          minute => 01,
                          second => 48,
                        );             
 
 
my $date2 = DateTime->new( year   => 2007,
                          month  => 11,
                          day    => 26,
                          hour   => 01,
                          minute => 53,
                          second => 26,
                        );             
 
 
my $dur = $date2->subtract_datetime($date1);
 
print $dur."\n\n";
le resultat du print est :

DateTime:: Duration=HASH(0x341d4c)
j'ai fait une boucle pour avoir les clés du hash mais rien ...

voici l'example de la FAQ

my $dt1 = DateTime->new( year => 2003, month => 4, day => 5,
hour => 1, minute => 58,
time_zone => "America/Chicago",
);
# is DST

my $dt2 = DateTime->new( year => 2003, month => 4, day => 7,
hour => 2, minute => 1,
time_zone => "America/Chicago",
);
# not DST

my $dur = $dt2->subtract_datetime($dt1);
# 2 days and 3 minutes
Merci par avance
Cordialement