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}; }