Thread externes File laden & variable ersetzen (17 answers)
Opened by ack at 2008-05-20 09:30

moritz
 2008-05-20 11:48
#109971 #109971
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
Update: Oh, ich sollte $text als '...' initialisieren. Danke pq, ich war zu blind ;-). Hab jetzt das Posting grob verändert ;)

GwenDragon+2008-05-20 09:35:45--
Wieso muss $foo mit our deklariert werden? Wo ist da die Falle?


Alle lexikalischen Variablen (also die, die mit 'my' deklariert werden) leben Außerhalb der Symboltabelle, und zwar im lexikalischen Pad.

Wenn man jetzt versucht über die Symboltabelle probiert auf eine my-Variable zuzugreifen sollte das fehlschlagen:

Code: (dl )
1
2
3
 perl -Mstrict -wle 'my $b = "test"; $_=q{a $b c};s/\$([A-Za-z0-9_]+)/$main::{$1}/eg; print'
Use of uninitialized value in substitution iterator at -e line 1.
a c


Anscheined macht auch ${var} den Umweg über die Symboltabelle.

View full thread externes File laden & variable ersetzen