$InfoData = sprintf("$targetname Avg.Time= $o_target"); $PerfData = sprintf( "value1=%f value2=%f value3=%f", $value1, $value2, $value3 ); push @results, { InfoData => $InfoData, PerfData => $PerfData, ); #### foreach (@results) { my $info_data = $_->{InfoData}; my $perf_data = $_->{PerfData}; # Do whatever you need to... } # Or maybe: my $arb_info = $results[$arbitrary_idx]->{InfoData}; my $arb_perf = $results[$arbitrary_idx]->{PerfData};