In Perl, I'd like to look up the localtime in a specific timezone. I had been using this technique:

```
$ENV{TZ} = 'America/Los_Angeles';
my $now = scalar localtime;
print "It is now $now\n";
# WORKS: prints the current time in LA

```

However, this is not reliable -- notably, if I prepend another localtime() call before setting $ENV{TZ}, it breaks:

```
localtime();
$ENV{TZ} = 'America/Los_Angeles';
my $now = scalar localtime;
print "It is now $now\n";
# FAILS: prints the current time for here instead of LA

```

Is there a better way to do this?