use warnings; use Data::Dumper; my @array; @arr = ( [ undef, undef, undef, undef, ['S', 'M', 'R', 'B'], ] ); print Dumper \@arr; my ($VAR1,$VAR2,$VAR3,$VAR4) = @{$arr[0][4]}; print "Var1: $VAR1\tVar2: $VAR2\tVar3: $VAR3\tVar4: $VAR4\n"; Testing($arr[0][4]); sub Testing { my ($VAR5,$VAR6,$VAR7,$VAR8) = @{$_[0]}; print "Var5: $VAR5\tVar6: $VAR6\tVar7: $VAR7\tVar8: $VAR8\n"; }