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


in reply to Returning values from a sub routine.

Either use an anonymous array, or store the values in the hash as arrays so that you can have multiple emails per name. Then you'd do something like
for my $email (@{$info->{$name}}) { my $checking = printing( names => $name, emails => $email, ); }
Or you could possibly just combine emails into a comma separated list if that is an acceptable output.

                - Ant
                - Some of my best work - (1 2 3)

Replies are listed 'Best First'.
Re^2: Returning values from a sub routine.
by Anonymous Monk on Jul 31, 2012 at 17:05 UTC
    Would you be able to post some sample code using the code posted here using an anonymous array to return the values?
      I can get you started.

      You wouldn't be able to assign directly to a hash slice like you do, you'd have to iterate. If using a hash of arrays I'd always use an array as the value, even if its only one value, will help keep the code simpler. You can loop through both arrays separately or combine them

      for my $name ( @names_combined ) { push @{$emails{$name}}, shift(@emails_combined); }

                      - Ant
                      - Some of my best work - (1 2 3)

        Sorry it didnt help, where in this sample code would your code go?