foreach my $i (keys %results){ print "rule_id - $i\n"; foreach my $k (keys %{$results{$i}}){ print "$k -> $results{$i}->{$k}\n"; } print "----------------------------------\n"; } $self->process_template( template => $login_template, data => { results => \%results}); #### [% FOREACH r = results %] [% r %] <---- this prints out a hash [% END %]