Thread Refrenzen und fetchrow_arrayref (5 answers)
Opened by Wastl at 2014-10-16 16:19

Gast Wastl
 2014-10-16 16:19
#177863 #177863
Würde gerne mittels fetchrow_arrayref die Datensätze als Referenzen in ein Array schreiben.
Das entsprechende Code Fragment:

Code: (dl )
1
2
3
4
5
6
7
my @res;
my $row;

while ($row = $query->fetchrow_arrayref){
print "$row->[0] : $row->[1] : $row->[2]";
push @res, $row;
}

Die Ausgabe:

Code: (dl )
1
2
1 : LANGUAGE : de_DE
2 : LANGUAGE : en_US


Sieht eigentlich ganz gut aus. Lasse ich mir allerdings den Listen Inhalt anzeigen, kommt dieses:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
my @res;
my $row;

while ($row = $query->fetchrow_arrayref){
print "$row->[0] : $row->[1] : $row->[2]";
push @res, $row;
}

print "---------------------------------------";

foreach $row (@res) {
print "$row->[0] : $row->[1] : $row->[2]";
}


Code: (dl )
1
2
3
4
5
1 : LANGUAGE : de_DE
2 : LANGUAGE : en_US
---------------------------------------
2 : LANGUAGE : en_US : ARRAY(0x1417df0)
2 : LANGUAGE : en_US : ARRAY(0x1417df0)


Auch wenn in der While Schleife mit jedem Durchlauf der nächste Datensatz eingelesen und auch korrekt ausgegeben wird, scheint jedesmal dieselbe Referenz übergeben zu werden.

Wo liegt der Fehler?
Last edited: 2014-10-16 16:42:04 +0200 (CEST)

View full thread Refrenzen und fetchrow_arrayref