Schrift
[thread]75[/thread]

Verschachtelte Tabellen mit HTML::Template (Seite 2)

Leser: 1


<< |< 1 2 >| >> 14 Einträge, 2 Seiten
format_c
 2003-10-22 14:56
#7433 #7433
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
[quote=Ronnie,22.10.2003, 12:49]Wie kann ich im Hash direkt den Rückgabewert der Funktion &fetch_contact() referenzieren?

Code: (dl )
1
2
3
4
5
6
7
8
my @inner_loop = &fetch_contact($eid);
 my %row = (
            firma => $firma,
            strasse => $strasse,
            plz => $plz,
            ort => $ort,
            contact_loop => \@inner_loop
           );


Gruss,
Ronnie[/quote]
Probiers mal so:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
use strict;
use warnings;

 my %row = (
            firma => $firma,
            strasse  => $strasse,
            plz  => $plz,
            ort  => $ort,
            contact_loop => \@{&fetch_contact($eid)}
           );


Gruß Alex\n\n

<!--EDIT|format_c|1066820231-->
Ronnie
 2003-10-22 15:06
#7434 #7434
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Nee, will er nicht:
Quote
Can't use string ("2") as an ARRAY ref while "strict refs" in use at (...)
format_c
 2003-10-22 15:12
#7435 #7435
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Ah jetzt.Du speicherst es als Referenz auf einen Code (sub) und musst ihn wenn du den Rückgabewert haben willst dereferenzieren:
Code: (dl )
1
2
3
4
5
6
7
8
9
use strict;

sub test {
return qw/1 2 3 4 5/;
}
# Refernzieren
my $test = \&test;
# Dereferenzieren
print &$test;


Gruß Alex
format_c
 2003-10-22 15:15
#7436 #7436
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Ist aber genau der selbe Effekt mit dem zwischengespeicherten Array bis auf den Speichergewinn.

ODer du nimmst als den HashValue ein Anonymes Array.
Aber dann kanns in deinem Prozess das Hash zu verarbeiten ziemlich haarig werden.

Code: (dl )
$hash{value} = [&subroutine()];

Dann musst du die Values dann immer mit ref prüfen ob und was für eine Referenz das dann ist.

PS: Lass es so wie es ist.

Gruß Alex
<< |< 1 2 >| >> 14 Einträge, 2 Seiten



View all threads created 2003-10-22 11:39.