Thread Variable aus URL kann nicht verwendet werden: unsichtbare Sonderzeichen?
(8 answers)
Opened by Superfrank at 2006-09-14 15:23
[quote=GwenDragon,14.09.2006, 14:20][quote=Superfrank,14.09.2006, 13:23]
Code: (dl
)
my $lh = "lang::$lang"->get_handle("$lang" . '_welcome'); Code: (dl
)
"lang::$lang"->get_handle("$lang" . '_welcome'); "lang::$lang" ist doch eine Referenz, oder? Nach deinem Beispiel mit lang de würde es zu: Code: (dl
)
"lang::de"->get_handle("$lang" . '_welcome'); Mir mangelt es da an Überblick deiner Module.[/quote] Guten Morgen, Quote fast ;-) Es kommt Code: (dl
)
"lang::de"->get_handle("de" . '_welcome') heraus. lang::de ist die Projektklasse, die zur Laufzeit mit Code: (dl
)
require "lang/$lang.pm"; geladen wird. Jede auszuliefernde Seite hat sein eigenes Lexikon und das Handle wird wie oben erwähnt erzeugt. In einem anderen Thread hatte ich mich ja gewundert, warum das Handle nicht einfach welcome heißen kann, wenn ich die Doku zu Locale::Maketext (hab leider den cpan-Quote nicht hingekriegt) verstanden habe, ist das gar nicht möglich. Das nur zur Erklärung warum es "de_welcome" anstatt nur "welcome" heißt. Das alles funktioniert auch wunderbar, nur wenn die Sprache aus der URL kommt geht es nur mit der Zeile Code: (dl
)
$lang = 'de' if $lang eq 'de'; Viele Grüsse Frank |