tableau comme valeur dans un hash de hash
Salut.
J'ai un problème d'accès à une information contenu dans un hash de hash.
Je m'explique. j'ai déclaré et généré un hash de hash. Pour l'un des couples clé/clef/valeur j'ai besoin qu'elle prenne les valeur d'un tableau déjà existant. Voici la partie de mon code ou je déclare mon double hash
(les ... représentent les champs de mon hash)
Code:
1 2 3 4 5 6 7 8 9 10
|
open ("TMP" , "cmde syst |") or die ("Pb cmde lssyscfg : $! \n");
while (<TMP>) {
@tabPartition = split(',',$_);
$hashRess {$tabPartition[0]} = {default_profil => $tabPartition[1],
name => 'null',
...
io_slots => 'null'};# c'est la clé devant contenir mon tableau
}
close (TMP); |
je voulais savoir si ma déclaration est correcte.
Par ailleurs, dans la suite de mon programme, je remplie les champs suite à divers traitements.
Code:
1 2 3
|
#pour mon tableau j'ai la ligne suivante
$hashRess{$cle}{io_slots} = @tabIO; |
Je ne sais pas comment afficher/accéder au premier élement contenu dans le champ $hashRess{$cle}{io_slots}.
je croyais pouvoir le faire de la maniere suivante :
Code:
1 2 3 4
|
print $hashRess{$cle}{io_slots[0]}; # erreur à la compilation : syntax error at ... near "io_slots["
#ou
print $hashRess{$cle}{io_slots}[0]; # erreur à la compilation : Can't use string ("6") as an ARRAY ref while "strict refs" in use at ... |
j'ai juste besoin de savoir comment accéder à une cellule.
En esperant que mes axplications sont cohérentes.
@+++
kunu