>perl -wMstrict -MData::Dump -le "my @array = qw( 111 222 333 444 555 888); my @array2 = qw(acct1 acct2 acct3 acct4 acct5 acct8); ;; sub blesh { my ($ar_1, $ar_2) = @_; ;; die qq{referenced arrays not same size} unless @$ar_1 == @$ar_2; ;; return map +{ $ar_1->[$_] => $ar_2->[$_] }, 0 .. $#$ar_1; } ;; my @AoH = blesh(\@array, \@array2); dd \@AoH; " [ { 111 => "acct1" }, { 222 => "acct2" }, { 333 => "acct3" }, { 444 => "acct4" }, { 555 => "acct5" }, { 888 => "acct8" }, ]