Bonjour/Bonsoir,
Je viens de commencer le perl et je dois concevoir une application dans laquelle je suis ammené à concevoir une hash dans laquelle se situe un tableau.
Après quelques recherches sur internet j'ai lu qu'une hash ne peut contenir qu'un scalaire donc j'ai procédé comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
my %group = ();
#rajout du groupe aux données disponibles
my $groupname = @{$k}[0]; #Cette ligne est initialisee en dehors de ce bout de code
for(my $i=0; $i < scalar(@{$k}); $i = $i+2)
{
    my $sub_groupname =  @{$k}[$i];
    my @tab = ();
    if(defined($group{$sub_groupname}))   
         {@tab=@{$group{$sub_groupname}};}
    push @tab, ${$k}[$i+1];
    $group{$sub_groupname} = \@tab;
}
Mon probleme est que la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
$group{$sub_groupname} = \@tab;
ne mémorise que la derniere valeur comme si le programme ne tenait pas compte du tableau.

Pouvez vous me fournir une solution a ce problème s'il vous plait?
Je vous remercie.