Mehrere Werte zu einem Schlüssel speichern

chris_sit

Erfahrenes Mitglied
Hi,

ich experimentiere eben mit Perl herum und bin auf ein Problem gestoßen, wo ich nicht so ganz weiterkomme.

Ich habe einen Hash, jedoch möchte ich zu meinen Keys (Rechnernamen) mehrere IP-Adressen speichern können.
Bei
Code:
 $hash($Rechnername) = <IPADRESSE>
überschreibt er den Wert, wenn ich ihm eine Liste als Wert geben wollte kam ich am Ende nur auf die Anzahl der enthaltenen Elemente - irgendwo steh ich auf dem Schlauch und würd mich über ein wenig Hilfe fruen :)
 
Das ist ein Punkt, wo "Referenzen" ins Spiel kommen. Du kannst als Wert in einem Hash nur Skalare haben (also keine Listen oder ähnliches). Das heißt wenn Du eine Liste von Werten zu einem Schlüssel speichern willst, dann musst Du eine Array-Referenz speichern.

Code:
#!/usr/bin/perl

use strict;
use warnings;

my @werte = qw(gelb blau rot);
my %hash;

$hash{farben} = \@werte;

Lesenswert zum Thema Referenzen: http://wiki.perl-community.de/bin/view/Perldoc/perlreftut
 
danke für die Antwort Renee, ich hatte es nach einigem rumprobieren über einen Beitrag in der selfhtml-Newsgroup auch geschafft, Referenzen auf einen Array zu speichern, in deinem Link werde ich sicher noch mehr Details dazu finden :)
 

Neue Beiträge

Zurück