Hi,
in Perl gibt es use.
Habe es damit probiert und probiert und probiert, aber ich komme nicht zurecht.
Dabei ist es bestimmt ein trivialer Fehler.
In der nachfolgenden 1. Variante enthält $erg den korrekten Wert aus dem Hash.
In der 2. Variante nach Auslagerung des Hash, bleibt $erg unbesetzt.
Variante 1:
#!/usr/bin/perl -w
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);
......
my $s = "zb";
my $erg;
my %Zuordnung = (
"ar" => "autoradio",
"zb" => "zahnbürste",
"xy" => "aaaaaa"
);
$erg = $Zuordnung{"$s"};
Variante 2:
#!/usr/bin/perl -w
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);
......
my %Zuordnung;
use Zuordnung;
my $s = "zb";
my $erg;
$erg = $Zuordnung{"$s"};
Programm Zuordnung.pm (im gleichen Verzeichnis wie zugehöriges Hauptprogramm):
package Zuordnung;
use strict;
my %Zuordnung = (
"ar" => "autoradio",
"zb" => "zahnbürste",
"xy" => "aaaaaa"
);