PDA

Visualizza la versione completa : accedere agli hash dentro un array


Manuel.s
18-02-2006, 19:35
ciao a tutti
ho una sub che crea un array di hash cosi:



sub getSources {
my $query = "select id, url from sources";
my $sth = $db->prepare($query);
$sth->execute;
my @arr_sources = ();
while (my $recset = $sth->fetchrow_hashref) {
my $hash_sources;
$hash_sources{id} = $recset->{id};
$hash_sources{url} = $recset->{url};
push(@arr_sources, \$hash_sources);
}
$sth->finish;
$db->disconnect;
return \@arr_sources;
}


richiamo la sub ma non riesco ad accedere ai valori:



my @arr_sources = &getSources();
foreach my $source (@arr_sources) {
print $source->[0];
}


come posso fare ad accedere ai vari hash e stampare i valori?

grazie 1000

:ciauz:

shishii
23-02-2006, 17:43
non si tratta di un semplice array, ma din un array di hash per cui puoi usare qualcosa di simile:

my @arr_sources = &getSources();
foreach my $source (@arr_sources) {
print $source->{id};
print $source->{url};
}

Manuel.s
23-02-2006, 20:14
ci provo subito

grazie 1000

:ciauz:

Loading