Thread localtime gibt mir eine stunde zuviel (9 answers)
Opened by FunBruno at 2015-02-09 13:36

Linuxer
 2015-02-09 14:18
#179556 #179556
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Unabhängig von Deinem Zeitzonenproblem:

Dein Code
Code (perl): (dl )
1
2
3
4
5
$Monat = $Monat < 10 ? $Monat = "0".$Monat : $Monat;
$Monatstag = $Monatstag < 10 ? $Monatstag = "0".$Monatstag : $Monatstag;
$Stunden = $Stunden < 10 ? $Stunden = "0".$Stunden : $Stunden;
$Minuten = $Minuten < 10 ? $Minuten = "0".$Minuten : $Minuten;
$Sekunden = $Sekunden < 10 ? $Sekunden = "0".$Sekunden : $Sekunden;


enthält pro Zeile eine überflüssige Zuweisung. Im "Wahr"-Teil brauchst Du keine Zuweisung, es reicht die String-Verknüpfung. Und mit etwas mehr Mühe in der Formatierung wird das auch gleich lesbarer:

Code (perl): (dl )
1
2
3
4
5
$Monat     = $Monat     < 10 ? "0".$Monat     : $Monat;
$Monatstag = $Monatstag < 10 ? "0".$Monatstag : $Monatstag;
$Stunden   = $Stunden   < 10 ? "0".$Stunden   : $Stunden;
$Minuten   = $Minuten   < 10 ? "0".$Minuten   : $Minuten;
$Sekunden  = $Sekunden  < 10 ? "0".$Sekunden  : $Sekunden;


Und mit einer Schleife (und mit sprintf) wird das auch kürzer:
Code (perl): (dl )
1
2
3
for my $value ( $Monat, $Monatstag, $Stunden, $Minuten, $Sekunden ) {
    $value = sprintf "%02d", $value;
}
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread localtime gibt mir eine stunde zuviel