Thread Als Value eines Hashes will ich ein Array mitgeben
(3 answers)
Opened by krusty at 2007-09-15 12:01
Hast Du denn eine Idee, was Du mit "funktioniert leider nicht" meinst?
Auf den ersten Blick ist zu erkennen, dass Du @achsen ausserhalb der Schleife deklarierst. Dadurch nutzt Du bei der Zuweisung immer die gleiche Speicheradresse und @achsen wird immer wieder neu überschrieben. Ich würde folgendes vorschlagen, so kannst Du Dir @achsen sogar ganz sparen: Code (perl): (dl
)
1 2 3 4 5 6 7 8 my %order = (); my $screenid = ""; my @yx = (); while( my @erg = $sth->fetchrow_array) { $order{$erg[0]} = [ @erg[1,2] ]; } Ansonsten musst Du @achsen entweder in der Schleife deklarieren: Oder Du nutzt eine Referenz auf ein anonymes Array: Was mir sonst noch so aufgefallen ist: Auf ein Element eines Hash greifst Du mit $hash{key} zu, nicht mit %hash{key}. Du brauchst die Variable, die den Hash-Key benennt, nicht in "" setzen: also $order{$erg[0]} Es ist Dir dringendst angeraten "use strict;" und "use warnings;" im Skript zu benutzen. 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! |