my %h = (); # @h{@FIELDS} = @row; ($h{$FIELDS[0]}, $h{$FIELDS[1]}, $h{$FIELDS[2]}, ...) = ( $row[0] , $row[1] , $row[2] , ...); $result = \%h;