#!/usr/bin/perl
use strict;
use warnings;
use feature qw/ say /;
use Data::Dumper;
my @values = ('inbox', 'yes', 'NZ');
my %data;
$data{ $_ } = shift @values for qw/ mailbox subscribe country /;
say Dumper \%data;
__END__
####
[nick:~/monks]$ perl 1140269.pl
$VAR1 = {
'subscribe' => 'yes',
'country' => 'NZ',
'mailbox' => 'inbox'
};
####
#!/usr/bin/perl
use strict;
use warnings;
use feature qw/ say /;
use Data::Dumper;
$Data::Dumper::Sortkeys = 1;
my @records = ( [ 'inbox', 'yes', 'NZ' ],
[ 'inbox', 'no', 'UK' ],
[ 'outbox', 'yes', 'UK' ] );
my $href;
my $index = 0;
foreach my $record ( @records ) {
++$index;
$href->{ $index }->{ $_ } = shift @{ $record } for qw/ mailbox subscribe country /;
}
say Dumper $href;
__END__
####
[nick:~/monks]$ perl 1140269.pl
$VAR1 = {
'1' => {
'country' => 'NZ',
'mailbox' => 'inbox',
'subscribe' => 'yes'
},
'2' => {
'country' => 'UK',
'mailbox' => 'inbox',
'subscribe' => 'no'
},
'3' => {
'country' => 'UK',
'mailbox' => 'outbox',
'subscribe' => 'yes'
}
};