Assuming multiple items can be inserted under the same key, you probably want a hash of arrays of hashes. Building this is similar, just push a hashref instead of loose values: (all code untested)
push @{ $hash{"ef56"} }, {height => 2.6, color => 'red', weight => 4}
+;
push @{ $hash{"ef56"} }, {height => 3.2, color => 'blue', weight => 5}
+;
This will also allow you to easily iterate over the items associated with any one key:
foreach my $item (@{$hash{"ef56"}}) {
print $item->{height}, ' ', $item->{color}, ' ', $item->{weight}, "\
+n";
}
See the documentation for more, particularly perldsc, perllol, perlreftut, and perlref.