http://www.perlmonks.org?node_id=308278


in reply to If/else problems

Another (very minor) stylistic point: you can use sprintf to good effect and avoid having to set up a temporary array.
use strict; my $timediff=0; # set it to whatever # just get the month my $month = (localtime(time + ($timediff * 3600)))[4]; # move 0..11 month range into line with human convention $month = sprintf("%02d", ++$month); print ("$month\n");
Not to worry though, if you're comfortable with your method (TIMTOWTDI, after all).

Tim

Update: simplified to better make the point.