in reply to Hash quesiton
%List isn't a list but a hash which contains as it's value for $key1 a reference to an anonymous hash which contains as it's value for $key2 a reference to an anonymous hash which contains as it's value for $key3 a reference to an anonymous hash... well you get the picture.
However, since hash values are always scalars, the for each statement is wrong here (each is normally not used like that anyway). Either the last value is an array reference, in which case you need to dereference it:
or it's a hash reference:for my $element (@{$List{$key1}{$key2}{$key3}{$key4}{$key5}}) { .. }
or it's a simple scalar:while (my $name,$value) = each %{$List{$key1}{$key2}{$key3}{$key4}{$ke +y5}}) { .. }
my $value = $List{$key1}{$key2}{$key3}{$key4}{$key5}}
see perlreftut and perlref.
|
|---|