Thread Liste von Hashs in einem Array (3 answers)
Opened by jan at 2015-11-04 17:01

Linuxer
 2015-11-04 17:51
#182771 #182771
User since
2006-01-27
3870 Artikel
HausmeisterIn

user image
Du packst am Ende mit push(@mainArray, @subArray) den Inhalt, also die einzelnen Elemente, aus @subArray in @mainArray. Dabei verlierst Du natürlich das Sub-Array. Du musst @subArray als Referenz ins @mainArray packen.

Damit @subArray für jeden Datensatz ein individuelles Array wird, sollte es erst innerhalb der Schleife deklariert werden.


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
foreach (...) {
foreach $catId (@catIds) {
# make a new subArray individual every time
my @subArray;

push(
@subArray, {
'categoryName' => $catNames[$catId},
'categoryUrl' => "list.cgi?category=" . $catId,
},
);
}

# push the reference
push @mainArray, \@subArray;
}
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Liste von Hashs in einem Array