Thread array in hash erweitern (23 answers)
Opened by jan99 at 2010-09-03 12:59

pq
 2010-09-07 09:19
#141235 #141235
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
du hast die stelle richtig kommentiert und willst das @ doch an der falschen stelle anbringen.

zitat:
@{ $VARIABLE{$KEY} }

wo muss das @ also hin?
@{ $key_id_list{$key} }

das ist doch die genaue entsprechung, nur der hashname und der keyname sind anders.

du hast ein hash of arrays.

$key ist der key. und $key_id_list{$key} ist der value dazu.
da du ein hash of arrays hast, ist also der value eine arrayref.
und über die willst du iterieren.

warum soll $data nun wiederum eine arrayref sein? $data ist jeweils ein element der arrayref.
man dereferenziert nicht bei der angabe der iterationsvariable.

was du geschrieben hast:
for my $data ($key_id_list{$key})

iteriert über $key_id_list{$key} als eine einzige variable, nämlich einen skalar. die arrayref.
da du sie nicht dereferenzierst, kann die schleife auch nur einmal durchlaufen. ist also sinnlos.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread array in hash erweitern