Чтобы добавить еще один элемент в эту структуру:
# Get the element
my $hashRef = {
'id' => '1',
'name' => 'John'
};
# You didn't specify what you have as far as DB data
my $hashRef = someMethodReturningDatabaseData();
# Add to the arrayref:
my $hash = { user => [] }; # Initialize - only once
$hash->{user} ||= []; # As alternative, always make sure to have an arrayref,
# on every iteration
# Add to the array ref
push @{ $hash->{user} }, $hashRef;
На основании вашего комментария к другому ответу вы можете сделать
my $hash = { user => [] }; # Initialize - only once
foreach my $user (@users) {
push @{ $hash->{user} }, { id => $user->[0], name => $user->[1] };
}
Как примечание, ваша структура данных выглядит очень странно- непонятно, зачем нужен внешний хеш с одним жестко закодированным ключом "user
".