Here is an example of how you could recurse through a structure of hash references in practice.
It uses the ref function to determine whether a given level is a hash reference.
use Modern::Perl; my %ref_chain = ( 'key1' => { 'key2' => { 'key3' => 'not a reference' } }, 'key4' => { 'key5' => 'no ref here' } ); sub traverse_hashes { my $hashref = shift; foreach my $key (keys %$hashref) { if (ref $hashref->{$key} eq 'HASH') { say "$key is a hash ref. Recursing."; traverse_hashes($hashref->{$key}); } else { say "$key is not a hash ref (value: $hashref->{$key})"; } } } traverse_hashes(\%ref_chain);
In reply to Re: Hashes Question
by ColonelPanic
in thread Hashes Question
by anshumangoyal
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |