Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: varying length multi-dimensional hashes

by chromatic (Archbishop)
on Oct 04, 2000 at 22:20 UTC ( #35305=note: print w/ replies, xml ) Need Help??


in reply to varying length multi-dimensional hashes

So what you need is an arbitrarily nested hash searcher? Yikes, those can get tricky. See ref, but I'd start out with (pseudo) code like the following:

sub find_value { my $hash_ref = shift; my $level; foreach my $key (keys %$hash_ref) { $level .= "$key\n"; my $value = $hash_ref->{$key}; if (ref($value) eq 'HASH') { $level .= find_value($value); } else { $level .= "\t$value\n"; } } return $level; }
That's untested, and it doesn't do anything that Data::Dumper doesn't do better... but it's a place to start.


Comment on Re: varying length multi-dimensional hashes
Download Code
RE: Re: varying length multi-dimensional hashes
by joe (Acolyte) on Oct 04, 2000 at 22:42 UTC
    Thanks Chromatic! That looks like the exact answer for traversing the hash. Now all I need is to do is to figure out how to create the hash. My partner suggests using eval. What do you think?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://35305]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (8)
As of 2014-08-28 10:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (259 votes), past polls