Output:my @unholy_mix_of_scalars_and_arrayrefs = ( 'BLACK', [ qw( blue green red yellow ) ], 'FOO', [ qw( bar baz qux kibble ) ], ); for my $scalar_or_ref ( @unholy_mix_of_scalars_and_arrayrefs ) { my $type = ref $scalar_or_ref; if ( not defined $type) { print "undef!\n"; } elsif ( $type eq '' ) { print "scalar : $scalar_or_ref\n"; } elsif ( $type eq 'ARRAY' ) { print "arrayref: @$scalar_or_ref\n"; } else { print "unhandled reftype '$type': $scalar_or_ref\n"; } } # Maybe you meant this instead? my %sane_hash = ( 'BLACK' => [ qw( blue green red yellow ) ], 'FOO' => [ qw( bar baz qux kibble ) ], ); for my $key ( sort keys %sane_hash ) { print "key $key, array: @{$sane_hash{$key}}\n"; }
scalar : BLACK arrayref: blue green red yellow scalar : FOO arrayref: bar baz qux kibble key BLACK, array: blue green red yellow key FOO, array: bar baz qux kibble
In reply to Re: how to dereference anonymous array
by Util
in thread how to dereference anonymous array
by rnaeye
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |