Thanks for the inputs. It works well and speed of execution seems to have no much difference.
Can we use the same approach of Time::Local to add a some seconds to the existing time.
I need something to work like the behaviour mentioned below
my $t1 = "2009-04-12 23:59:55";
my $delta = 600; # seconds
$updated_time = &String2Time($t1) + $delta;