hi,
Ein Hash kann aber meines Wissens nur zwei Elemente speichern: Name und Wert.
Ein hash hat key => value, das ist richtig. Der value kann jedoch wiederum ein key sein, welcher auf einen Speicherbereich zeigt (Referenz):
$hash{oid}{att} = $value;
Keys in hashes sind Scalare. Referenzen sind auch Scalare. Ein Value kann auch eine Array-Referenz sein:
$hash{arr} = [1,2,3];
Hast Du anstelle hash eine hash-Referenz kommt der Arrow-Operator ins Spiel
$href->{oid}->{att} = $val;
Wobei der zweite Pfeil auch weggelassen werden kann, weil an dieser Stelle sowieso eine Referenz erwartet wird:
$href->{oid}{att} = $val;
Da müsste ich ja die schöne eingelesene CSV-Zeile, die auch noch so schön gesplittet wurde (split) noch weiter zerlegen -> in eine Zweierkombination?
Überlegung: Welches Feld in der CSV ist eindeutig und als Key zu gebrauchen? Wenn keines nicht, nimm die Zeilennummer als Key, steht in $.
Ist das nicht noch viel umständlicher? Sind Arrays da nicht viel angenehmer?
Mit @Arrayname[Position+1] komm ich doch auch direkt an den Array-Inhalt.
Benamste Attribute sind immer besser zu handhaben und besser lesbar als ein stupider numerischer Index [0].
Hotti
Wenn der Kommentar nicht zum Code passt, kann auch der Code falsch sein.