Thread Hashes of Arrays
(8 answers)
Opened by flango at 2006-07-08 17:19
Hallo,
ich möchte für ein CGI Scipt hashes einem Array zuordnen. die Zuordnung funktioniert auch, mein Problem ist, das sich nur bestimmte hashes innerhalb des arrays bearbeiten möchte. Dafür ist folgende foreach Schleife: foreach $hash (@standorte) { print "<br>"; print keys %$hash ; print " --- "; print values %$hash; } Ausgabe: ######## standort_1 --- 1 standort_2 --- 2 standort_3 --- 3 abschicken --- Submit... ######## Um nur Standorte angezeigt zu bekommen, habe ich folgende Bedingung hinzugefügt. Aber ich erhalte keine Ausgabe ? Wenn ich für den Regex "/1/i" statt "/standorte/i" angebe erhalte ich eine Augabe ? Wieso behält diese Variable: local $hash_values = values %$hash; _immer_ den Wert "1" ? Obwohl sie innerhalb der foreach-Schleife ist ??? foreach $hash (@standorte) { local $hash_values = values %$hash; print "Hash_values<br> ". $hash_values."<br>"; if ( (keys %$hash) =~ /standorte/i ) { print "<br>"; print keys %$hash ; print " --- "; print values %$hash; } } Ausgabe mit "/standorte/i" als Regex: ######## Hash_values 1 Hash_values 1 Hash_values 1 Hash_values 1 ######## Ausgabe mit "/1/i" als Regex: ######## Hash_values 1 Hash_values 1 standort_1 --- 1Hash_values 1 Hash_values 1 standort_2 --- 2Hash_values 1 Hash_values 1 standort_3 --- 3Hash_values 1 Hash_values 1 abschicken --- Submit... ######## gruss flango |