When I attempt to reference the hash I get the following:# build hash while() { ... $hshFoo{$key1}{$key2} = $strFileName; ... # key1 is a number # key2 is a sequential number }
foreach $key (keys %hshFoo) { print " $key => $hshFoo{$key}\n"; }
Output: 6137 => HASH(0x1ddba60) 2823 => HASH(0x1ddbd18) 6598 => HASH(0x1ddbc88) 4156 => HASH(0x1ddbd00)Whereas "HASH(0x1ddba60)" contains:
6137 =>
0 => file1.xml
1 => file2.xml
2 => file3.xml
What is the best way to reference the 2nd hash?
I tried to create a temp hash of $hshFoo{$key}
to loop through, but that failed. I need to be
able to reference the 2nd key+value pair; in
this case of the hash "HASH(0x1ddba60)".
I tried this also...
foreach $key2 (keys $hshFoo{$key}) { ... } Type of arg 1 to keys must be hash (not hash element) at foo.pl line 341, near "}) " BEGIN not safe after errors--compilation aborted at foo.pl line 431.
-P0w3rK!d
In reply to Referencing a HoH by P0w3rK!d
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |