in reply to hashes of hashes

Hashes don't interpolate within quoted strings. You need to do something like this instead:

foreach my $last_name ( keys %people ) { print "Last name is $last_name.\n\tDetails are:\n"; print map { "$_: " . $people->{$last_name}{$_} . "\n\t" } keys %{$people->{$last_name}}; print "\n"; }

That's untested, so you may have to tinker with it to get your exact desired output, but it should help.


Dave