open FH, "$data" or die "Can't open $data: $!"; flock (FH, 1) or die "Can't lock $data for reading: $!"; foreach my $line () { (undef,undef,undef,$email,$phone,$partners,$memberno) = split "\t", $line; my @partnerssplit = split / /, $partners; $partners{$memberno} = \@partnerssplit; } close FH; print Dumper( \%partners);