Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Answer: How do I tie an array of hashes?

by Fastolfe (Vicar)
on Sep 21, 2000 at 17:53 UTC ( #33482=categorized answer: print w/replies, xml ) Need Help??

Q&A > Data Structures > How do I tie an array of hashes? - Answer contributed by Fastolfe

The items in your array are in insertion order, so what remains is each individual hash. In your example above, you have a list with one element: a standard hashref. Since you can't "tie" an anonymous reference like this, you would need to use the object-oriented abilities of Tie::IxHash instead:
use Tie::IxHash; push @data, Tie::IxHash->new( yo => mama, bliz => at ); push @data, Tie::IxHash->new( one => two, three => four); print join(", ", keys %{$data[1]}); # one, three
You can also create separate hashes, tied to Tie::IxHash (per the man page) and push references to each of those tied variables onto @data.

Log In?

What's my password?
Create A New User
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (3)
As of 2021-03-08 07:20 GMT
Find Nodes?
    Voting Booth?
    My favorite kind of desktop background is:

    Results (123 votes). Check out past polls.