Schrift
[thread]11843[/thread]

externes File laden & variable ersetzen (Seite 2)

Leser: 2


<< |< 1 2 >| >> 18 Einträge, 2 Seiten
GwenDragon
 2008-05-20 12:11
#109977 #109977
User since
2005-01-17
14835 Artikel
Admin1
[Homepage]
user image
Bin nicht pq, aber ...

in $main:: kann die my-Variable ja nicht liegen, weil sie nicht global ist. Aber wie greift eine auf die Symboltabelle der my-Variablen zu?
renee
 2008-05-20 12:18
#109979 #109979
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Abgesehen davon, dass symbolische Referenzen "bäh" sind, ist das Verhalten meinem Empfinden nach ein Fehler... perl sollte da erst bei den lexikalischen Variablen schauen und dann in der globalen Symboltabelle.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
moritz
 2008-05-20 12:19
#109980 #109980
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
GwenDragon+2008-05-20 10:11:27--
Bin nicht pq, aber ...


Ich weiß ;-). Das bezog sich auf einen Hinweis im IRC.

Quote
in $main:: kann die my-Variable ja nicht liegen, weil sie nicht global ist. Aber wie greift eine auf die Symboltabelle der my-Variablen zu?


Es gibt keine Symboltabelle, in der my-Variablen liegen. (Was auch der Grund dafür ist, dass man local() nicht auf sie anwenden kann.
Und ich vermute fast dass String-eval die einzige Möglichkeit ist, symbolisch auf das lexikalische Pad zuzugreifen.

Update: es gibt CPAN:PadWalker, damit kann man sich eigenen und fremde lexikalische Variablen anzeigen lassen.
ack
 2008-05-20 12:25
#109981 #109981
User since
2008-05-20
3 Artikel
BenutzerIn
[default_avatar]
mit

Code: (dl )
=~ s/\$(\w+)/${$1}/eg;


war mir dass schon klar, danke für das 'our'

was aber, wenn ich hash- oder array-referenzen verwenden möchte? muss ich die vorher als variable neu deklarieren?





renee
 2008-05-20 12:48
#109984 #109984
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
ack+2008-05-20 10:25:03--
was aber, wenn ich hash- oder array-referenzen verwenden möchte? muss ich die vorher als variable neu deklarieren?


wie meinst Du das??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
GwenDragon
 2008-05-20 12:50
#109986 #109986
User since
2005-01-17
14835 Artikel
Admin1
[Homepage]
user image
renee+2008-05-20 10:18:10--
ist das Verhalten meinem Empfinden nach ein Fehler... perl sollte da erst bei den lexikalischen Variablen schauen und dann in der globalen Symboltabelle.
Das dachte ich eben auch, dass zuerst bei den lexikalischen nachgeschaut wird.


moritz+2008-05-20 10:19:01--
Update: es gibt CPAN:PadWalker, damit kann man sich eigenen und fremde lexikalische Variablen anzeigen lassen.
Ach ja, das kenne ich noch von Eclipse (lang) her. Wie kann eine nur so vergesslich sein. *doh*
ack
 2008-05-20 13:03
#109989 #109989
User since
2008-05-20
3 Artikel
BenutzerIn
[default_avatar]
renee+2008-05-20 10:48:52--
ack+2008-05-20 10:25:03--
was aber, wenn ich hash- oder array-referenzen verwenden möchte? muss ich die vorher als variable neu deklarieren?


wie meinst Du das??


nun, wenn in meinem template z.b. der inhalt von
Code: (dl )
$DIES->{'DAS'}
ausgegeben werden soll
renee
 2008-05-20 13:10
#109990 #109990
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das wird mit der Zeit relativ schwierig zu parsen weil das beliebig komplex wird. Da müsstest Du ja schon fast den Perl Interpreter drauf loslassen ;-)

Gut gemeinter Rat: Schau Dich nach einem Template-System um. Erspart viel Arbeit und Kopfschmerzen.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< |< 1 2 >| >> 18 Einträge, 2 Seiten



View all threads created 2008-05-20 09:30.