J'ai une fonction qui retourne un tableau de hash.
c'est à dire de la façon:
return (%hash1,%hash2,%hash3,%hash4);
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1 et
les deux suivants dans un autre $tab2
Je fais :
($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Mais, j'ai beau faire un :
print $tab1[1]{'Clef'};
j'ai cherché dans pas mal de façon differente, mais impossible de
récuperer les valeurs dans les tables de hachage.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de
mes tables de hachages ( woarf le jeux de mot ;) ) ...
d'avance merci
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de mes tables de hachages ( woarf le jeux de mot ;) ) ... d'avance merci
On ne peut pas faire de tableau de tables de hashage, il faut utiliser des références. Cf. perldoc perlreftut pour une introduction.
Jacques Caron
Salut,
On Sun, 05 Feb 2006 00:38:05 +0100, Florent wrote:
J'ai une fonction qui retourne un tableau de hash. c'est à dire de la façon: return (%hash1,%hash2,%hash3,%hash4);
Non, ça ça renvoie un grand tableau qui ressemble à un seul hash.
Ce qu'il faut faire c'est retourner des références:
return (%hash1,%hash2,%hash3,%hash4);
Ou dans certains cas:
return ({%hash1},{%hash2},{%hash3},{%hash4})
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1 et les deux suivants dans un autre $tab2 Je fais : ($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Avec ce que tu as fais plus haut, tu obtiens la première clef dans $tab1[0], la première valeur dans $tab1[1], la deuxième clef dans $tab2[0], la deuxième valeur dans $tab2[1]. Avec l'une des méthodes indiquées tu obtiendras une référence sur un hash dans chaque.
Mais, j'ai beau faire un : print $tab1[1]{'Clef'}; j'ai cherché dans pas mal de façon differente, mais impossible de récuperer les valeurs dans les tables de hachage.
Normal.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de mes tables de hachages ( woarf le jeux de mot ;) ) ...
On Sun, 05 Feb 2006 00:38:05 +0100, Florent <nospam@sorry.fr> wrote:
J'ai une fonction qui retourne un tableau de hash.
c'est à dire de la façon:
return (%hash1,%hash2,%hash3,%hash4);
Non, ça ça renvoie un grand tableau qui ressemble à un seul hash.
Ce qu'il faut faire c'est retourner des références:
return (%hash1,%hash2,%hash3,%hash4);
Ou dans certains cas:
return ({%hash1},{%hash2},{%hash3},{%hash4})
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1 et
les deux suivants dans un autre $tab2
Je fais :
($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Avec ce que tu as fais plus haut, tu obtiens la première clef dans
$tab1[0], la première valeur dans $tab1[1], la deuxième clef dans
$tab2[0], la deuxième valeur dans $tab2[1]. Avec l'une des méthodes
indiquées tu obtiendras une référence sur un hash dans chaque.
Mais, j'ai beau faire un :
print $tab1[1]{'Clef'};
j'ai cherché dans pas mal de façon differente, mais impossible de
récuperer les valeurs dans les tables de hachage.
Normal.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de
mes tables de hachages ( woarf le jeux de mot ;) ) ...
On Sun, 05 Feb 2006 00:38:05 +0100, Florent wrote:
J'ai une fonction qui retourne un tableau de hash. c'est à dire de la façon: return (%hash1,%hash2,%hash3,%hash4);
Non, ça ça renvoie un grand tableau qui ressemble à un seul hash.
Ce qu'il faut faire c'est retourner des références:
return (%hash1,%hash2,%hash3,%hash4);
Ou dans certains cas:
return ({%hash1},{%hash2},{%hash3},{%hash4})
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1 et les deux suivants dans un autre $tab2 Je fais : ($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Avec ce que tu as fais plus haut, tu obtiens la première clef dans $tab1[0], la première valeur dans $tab1[1], la deuxième clef dans $tab2[0], la deuxième valeur dans $tab2[1]. Avec l'une des méthodes indiquées tu obtiendras une référence sur un hash dans chaque.
Mais, j'ai beau faire un : print $tab1[1]{'Clef'}; j'ai cherché dans pas mal de façon differente, mais impossible de récuperer les valeurs dans les tables de hachage.
Normal.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de mes tables de hachages ( woarf le jeux de mot ;) ) ...
On Sun, 05 Feb 2006 00:38:05 +0100, Florent wrote:
J'ai une fonction qui retourne un tableau de hash. c'est à dire de la façon: return (%hash1,%hash2,%hash3,%hash4);
Non, ça ça renvoie un grand tableau qui ressemble à un seul hash.
Ce qu'il faut faire c'est retourner des références:
return (%hash1,%hash2,%hash3,%hash4);
Ou dans certains cas:
return ({%hash1},{%hash2},{%hash3},{%hash4})
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1 et les deux suivants dans un autre $tab2 Je fais : ($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Avec ce que tu as fais plus haut, tu obtiens la première clef dans $tab1[0], la première valeur dans $tab1[1], la deuxième clef dans $tab2[0], la deuxième valeur dans $tab2[1]. Avec l'une des méthodes indiquées tu obtiendras une référence sur un hash dans chaque.
Mais, j'ai beau faire un : print $tab1[1]{'Clef'}; j'ai cherché dans pas mal de façon differente, mais impossible de récuperer les valeurs dans les tables de hachage.
Normal.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de mes tables de hachages ( woarf le jeux de mot ;) ) ...
On Sun, 05 Feb 2006 00:38:05 +0100, Florent <nospam@sorry.fr> wrote:
J'ai une fonction qui retourne un tableau de hash.
c'est à dire de la façon:
return (%hash1,%hash2,%hash3,%hash4);
Non, ça ça renvoie un grand tableau qui ressemble à un seul hash.
Ce qu'il faut faire c'est retourner des références:
return (%hash1,%hash2,%hash3,%hash4);
Ou dans certains cas:
return ({%hash1},{%hash2},{%hash3},{%hash4})
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1
et les deux suivants dans un autre $tab2
Je fais :
($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Avec ce que tu as fais plus haut, tu obtiens la première clef dans
$tab1[0], la première valeur dans $tab1[1], la deuxième clef dans
$tab2[0], la deuxième valeur dans $tab2[1]. Avec l'une des méthodes
indiquées tu obtiendras une référence sur un hash dans chaque.
Mais, j'ai beau faire un :
print $tab1[1]{'Clef'};
j'ai cherché dans pas mal de façon differente, mais impossible de
récuperer les valeurs dans les tables de hachage.
Normal.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte
de mes tables de hachages ( woarf le jeux de mot ;) ) ...
On Sun, 05 Feb 2006 00:38:05 +0100, Florent wrote:
J'ai une fonction qui retourne un tableau de hash. c'est à dire de la façon: return (%hash1,%hash2,%hash3,%hash4);
Non, ça ça renvoie un grand tableau qui ressemble à un seul hash.
Ce qu'il faut faire c'est retourner des références:
return (%hash1,%hash2,%hash3,%hash4);
Ou dans certains cas:
return ({%hash1},{%hash2},{%hash3},{%hash4})
Je voudrais récuperer les 2 premiers elements dans un tableau $tab1 et les deux suivants dans un autre $tab2 Je fais : ($tab1[0],$tab1[1],$tab2[0],$tab2[1]) = MaFonction();
Avec ce que tu as fais plus haut, tu obtiens la première clef dans $tab1[0], la première valeur dans $tab1[1], la deuxième clef dans $tab2[0], la deuxième valeur dans $tab2[1]. Avec l'une des méthodes indiquées tu obtiendras une référence sur un hash dans chaque.
Mais, j'ai beau faire un : print $tab1[1]{'Clef'}; j'ai cherché dans pas mal de façon differente, mais impossible de récuperer les valeurs dans les tables de hachage.
Normal.
Si quelqu'un pouvait me donner la clef qui pourrait m'ouvrir la porte de mes tables de hachages ( woarf le jeux de mot ;) ) ...