Thread verschiedene Sprachen in einem Prog: Wie macht ihr das? (9 answers)
Opened by macMeck at 2003-09-18 09:13

kabel
 2003-09-19 16:59
#53552 #53552
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
hier ist eine weitere lösung:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package Tie::I18N;

use Tie::Hash;
use base qw/Tie::StdHash/;

my %STRINGS = (
DE => {
ASK => "wieviele zeitschriften wollen sie kaufen?",
},

EN => {
ASK => "how many mags you wanna buy?",
}
);

sub TIEHASH {
my ($package, $language) = @_;
return bless {LANGUAGE => uc $language}, $package;
}

sub FETCH {
my ($self, $what) = @_;
return $STRINGS{$self->{LANGUAGE}}->{uc $what} || "";
}

1;


Quote
kabel@linux:~/progs/perl> cat i18n.pl
use strict;
use Tie::I18N;

my %hash;
tie %hash, "Tie::I18N", "de";
print $hash{ASK}, $/;
untie %hash;

tie %hash, "Tie::I18N", "en";
print $hash{ASK}, $/;
untie %hash;
kabel@linux:~/progs/perl> perl -w i18n.pl
wieviele zeitschriften wollen sie kaufen?
how many mags you wanna buy?
kabel@linux:~/progs/perl>


%STRINGS müsste natürlich irgendwie dynamisch gefüllt werden ...
-- stefan

View full thread verschiedene Sprachen in einem Prog: Wie macht ihr das?