Thread Stilfragen (Anfaengerperl)
(12 answers)
Opened by shi8dao at 2011-05-13 08:33 Quote Wer Funktionsaufrufe langweilig findet, schreibt Tie-Klassen: Modul untenstehend ;) Code (perl): (dl
)
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 package myDate; use strict; use warnings; sub TIESCALAR{ my $class = shift; my $time = shift || time; my $self = {}; my @d = localtime($time); $self->{VAL} = { yy => sprintf("%02u", (1900+$d[5])%100), yyyy => sprintf("%04u", (1900+$d[5])), 'yy-mm-dd' => sprintf("%04u-%02u-%02u", $d[5]+1900, $d[4]+1, $d[3]), 'dd.mm.yy' => sprintf("%02u.%02u.%04u", $d[3], $d[4]+1, $d[5]+1900), 'dd.mm.yy x' => sprintf("%02u.%02u.%04u %02u:%02u:%02u", $d[3], $d[4]+1, $d[5]+1900, $d[2], $d[1], $d[0]), }; return bless $self, $class; } sub FETCH{ my $self = shift; return $self->{VAL}; } Schöne Spielerei, aber ernsthafter Hintergrund: In meinen Anwendungen brauche ich verschiedene Datum- und Zeitformate, u.a. für HTTP (Last-Modified), Mail-Header und Cookies. Z.Z. binde ich dazu die Module POSIX und HTTP::Date ein. In Zukunft wird das alles in einem Modul vereint und der Zugriff auf die Formate erfolgt nicht über Methodenaufrufe, sondern einfach per Referenz, $date->{http}, $date->{cookie}, $date->{mail} usw. Last edited: 2011-05-14 10:09:45 +0200 (CEST) |