http://qs321.pair.com?node_id=124577


in reply to foreach/map equivalency

To return no value from a map, you're probably going to need to explictly return a null list, ():

my @map = map { $_->{'username'} eq $cgi->param('username') ? $_ : () } @{%{$x +ml}->{'user'}};

However this is better written with grep:

my @grep = grep { $_->{'username'} eq $cgi->param('username') } @{%{$x +ml}->{'user'}};