Thread Aktuelles Datum in Variable (17 answers)
Opened by Fairy at 2012-05-07 10:27

pq
 2012-05-07 12:23
#158126 #158126
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
das finde ich etwas verwirrend. bei beiden funktionen rufst du localtime auf.
eine funktion holt sich sekunde, minute und stunde, um sie dann wegzuwerfen (nicht zu benutzen), und liefert YYYYMMDD. die andere funktion liefert nur sekunde, minute und stunde.

wie ist der aufruf vorgesehen?
wenn man beide funktionen aufruft und die ergebnisse aneinanderhängt, ist das so nicht korrekt. beide localtime-aufrufe passieren zu verschiedenen zeitpunkten, weshalb es in grenzfällen zu falschen daten kommen kann. ausserdem ist es nicht sonderlich effizient.

mein vorschlag:

Code (perl): (dl )
1
2
3
use POSIX qw/ strftime /;
my $d = strftime("%Y-%m-%dT%H:%M:%S", localtime);
my $filename = "...-$d";


oder man arbeitest mit DateTime:
Code (perl): (dl )
1
2
3
4
use DateTime;
my $dt = DateTime->now; # objekt
# wird hier automatisch zu einem datummstring
my $filename = "...-$dt";
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Aktuelles Datum in Variable