Maik: Verschachteln von Array

Hi,

Ich hab mehrere Hosts. Jedem dieser Hosts möchte ich mehrere Schlüssel und Werte zuordnen, also zb.

%bkp1 = (
        "savename"=>"test",
        "hostname"=>"testhost",
);

%bkp2 = (
        "savename"=>"test2",
        "hostname"=>"testhost2",
);

Jetzt ist je ein Host in einem Hash. Jetzt möchte ich diese beiden Hashes aber noch in ein Array basteln. Gibts da ne Möglichkeit? Am Besten wäre es, wenn ich das in der Art wie

@array= array (
%bkp1 = (
        "savename"=>"test",
        "hostname"=>"testhost",
);

%bkp2 = (
        "savename"=>"test2",
        "hostname"=>"testhost2",
);
);

machen könnte. Wie realisiere ich sowas? Und wie greife ichd ann drauf zu?

Maik

  1. Hallo Maik.

    Jetzt möchte ich diese beiden Hashes aber noch in ein Array basteln. Gibts da ne Möglichkeit?

    Jo, so könnte man es machen:

    my $hostlist = {
                    'host1' => {
                                'savename' => 'test1',
                                'hostname' => 'testhost1',
                               },
                    'host2' => {
                                'savename' => 'test2',
                                'hostname' => 'testhost2',
                               }
                   };

    Der Zugriff erfolgt dann über:
    $hostlist->{$host}{$wert};

    Weitere Möglichkeiten sind hier beschrieben:
    http://www.perldoc.com/perl5.8.4/pod/perldsc.html

    Freundschaft!
    Siechfred

    --
    Punk's not dead: http://www.siechfreds-welt.de/badreligion.shtml
    Dankbarkeit, man spürt sie ja so selten bei den Menschen, und gerade die Dankbarsten finden nicht den Ausdruck dafür, sie schweigen verwirrt, sie schämen sich und tun manchmal stockig, um ihr Gefühl zu verbergen. (Stefan Zweig)
    ie:) fl:) br:? va:{ ls:? fo:§ rl:( n4:} ss:? de:µ js:{ ch:° sh:( mo:? zu:}
    1. Ok, Danke! Und was mache ich jetzt, wenn ich in einer Schleife die Hostnamen aller Hosts ausgeben möchte?

      1. Hallo Maik.

        Ok, Danke! Und was mache ich jetzt, wenn ich in einer Schleife die Hostnamen aller Hosts ausgeben möchte?

        Je nachdem, welche Struktur du gewählt hast, findest du in perldsc auch die Möglichkeiten des Zugriffs, den Link hatte ich dir ja schon gepostet.

        Freundschaft!
        Siechfred

        --
        Punk's not dead: http://www.siechfreds-welt.de/badreligion.shtml
        Dankbarkeit, man spürt sie ja so selten bei den Menschen, und gerade die Dankbarsten finden nicht den Ausdruck dafür, sie schweigen verwirrt, sie schämen sich und tun manchmal stockig, um ihr Gefühl zu verbergen. (Stefan Zweig)
        ie:) fl:) br:? va:{ ls:? fo:§ rl:( n4:} ss:? de:µ js:{ ch:° sh:( mo:? zu:}