Thread 3-dimensionales Array (8 answers)
Opened by weperl at 2007-07-13 16:38

pktm
 2007-07-13 19:06
#78458 #78458
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!

Mein Code spricht ein dreidimensionales Array an. D.h. es ist ein Array, welches wiederum an jeder Position ein Array enthält, welches wieder ein Array enthält. Das kann man sich so als dreidimensionales schachfeld vorstellen. An jeder Position gibt es genau 1 Figur, aber um an diese Figur zu kommen brauchst du 3 Koordinaten.

Du möchtest scheinbar ein Konstrukt, welches in diesen Feldern die Dinger wie Buch, Titel und Verfasser enthält.
Dazu brauchst du entweder ein zweidimensionales Array:
Code: (dl )
1
2
3
4
5
6
my $array_ref = [];
my @array2 = (qw/Buch Titel Verfasser/);
$array_ref[0] = \@array2;

# gib das Buch aus:
print $array_ref->[0]->[0];


Oder einen Hash, wenn du die Sachen nicht über Zahlen ansprechen möchtest:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
my %hash = ();
$hash{buch} = {verfasser => 'niemand', titel => 'das nichtexistente buch'};

# gibt den titel des Datensatzes aus
my $buch = 'buch';
print $hash{$buch}->{titel};

# besser: abfangen, falls das bcuh nicht drin steht:
if( exists $hash{$buch} ) {
print Dumper $hash{$buch};
}


Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )

View full thread 3-dimensionales Array