foreach my $rows (@$data) { my %GenericData; @GenericData{ @rawFields } = @$rows; push @rawRecords, \%GenericData; } return \@rawRecords; ################## # which is returned to the calling function as $data # #### makeJSONToExport($data); sub makeJSONToExport { my ($hashref) = @_; my $typehint_raw = { age => JSON_TYPE_INT, lastname => JSON_TYPE_STRING, firstname => JSON_TYPE_STRING}; my $typehint_raws = [ ($typehint_raw) x @$hashref]; my $json = encode_json($hashref, $typehint_raws); # my $json = encode_json($hashref, ); return $json; }