my %vars = ('measurements' => {'temperature' => {'current' => '22 degC', 'high' => '26 degC', 'low' => '18 degC' }, 'humidity' => '82%' }, 'time' => scalar(localtime) ); my $tt = Text::Template->new(SOURCE => $templateFile) or die "Couldn't construct template: $Text::Template::ERROR"; my $weather = $tt->fill_in(HASH => \%vars);