my $value = $q->{'content'}; my $param = $q->{'type'}; print $param,"$/"; #<------------------Here #$value =~ s/^\s+|\s*$//g; $param = &return_param_name($param); print $param,"$/"; #<--------------------Here push @{$qryhash{$param}}, $value; #### #!/usr/local/bin/perl #title "Problem iterating AoH" use strict; use warnings; my @queries = ( { 'content'=>'Blocking', 'type' => 'blocking' }, { 'content'=>'p01', 'type'=>'Priority' } ); my %hash; for my $reference (@queries){ push @{$hash{$reference->{'type'}}},$reference->{'content'}; } use Data::Dumper; print Dumper(\@queries),"\n"; print Dumper(\%hash); #### $VAR1 = [ { 'content' => 'Blocking', 'type' => 'blocking' }, { 'content' => 'p01', 'type' => 'Priority' } ]; $VAR1 = { 'blocking' => [ 'Blocking' ], 'Priority' => [ 'p01' ] }; ####