Thread Eigene Sprachdatei: Probleme mit Variablen (16 answers)
Opened by Tom at 2003-10-19 16:40

[E|B]
 2003-10-19 17:56
#6734 #6734
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Hehe... Sprachdatei, so etwas baue ich auch gerade in mein Script ein.
Ich habe das so gelöst:

Die Sprachdatei:
Code: (dl )
1
2
3
4
Test1
Test2
Test3
Test4


Nun lese ich diese in einen Hash ein:

Code: (dl )
1
2
3
4
5
6
7
8
9
my %hash;
my $x = "0";
open(F, "speech.txt") or die "Unable to open file: 'speech.txt'!\n$!";
foreach (<F>){
chomp;
$hash{$x} = $_;
$x++;
}
close(F);


Wenn ich nun die zweite Sprachzeile haben möchte, kann ich sofort darauf zugreifen. Nämlich mit dem Schlüssel 2 - 1.
Du kannst die Datei auch in ein Array einlesen, für meine Zwecke benötigte ich jedoch einen Hash.
Nun kannst du hingehen und in der Sprachdatei selber Platzhalter einbauen (%d, z.B.).
In der Ausgabe sieht das dann wie folgt aus:

Code: (dl )
1
2
my $user = "10";
$hash{'0'} =~ s!%d!$user!gi;


So einfach kannst du dann die Sprachdateitexte durch andere Variablen ersettzen.

HTH
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]

View full thread Eigene Sprachdatei: Probleme mit Variablen