use warnings; use strict; my %data; my $string = "awesome_array"; my $other_string = "another_awesome_array"; push @{$data{$string}}, 1, 2, 3, 4, 5; foreach my $element (@{$data{awesome_array}}) { print "$element\n"; push @{$data{$other_string}}, $element; } print @{$data{another_awesome_array}};