use Date::Day; ## The following will print the weekday corresponding my $fragment = '2010-03-23 17:00:00'; $fragment = substr $fragment, 0, 10; my ( $year, $month, $day ) = split /-/, $fragment; $fragment = &day($month,$day,$year); $fragment = $fragment." $day-$month"; print "$fragment"; #### use Date::Day; ... my $fragment; if ($table =~ m/daily/) {$fragment = substr $ref->{'time'}, 0, 10; my ( $year, $month, $day ) = split /-/, $fragment; $fragment = &day($month,$day,$year); $fragment = $fragment." $day-$month"; } else {$fragment = substr $ref->{'time'}, 11, 5;} #write times to micro HTML printf MICROHTML ''; printf MICROHTML "$fragment"; printf MICROHTML '';}