Inhalt eines Strings als Variablenname?
FrankS
- perl
0 Philipp0 Kai Diefenbach0 FrankS
Moin allerseits,
heute habe ich irgenwie eine Knoten im Kopf, kein Wunder bei dem Wetter ...
Mein Problem: ich habe einen Variable, die einen String enthält (den ich erst zur Laufzeit des Scripts kenne) und diesen will ich als Variablennamen nutzen. Beispiel:
$varname="test";
#hier möchte ich der Variablen mit dem Namen aus $varname, also $test, einen Wert zuweisen...
#das ist das große ?
print $test;
Kann einer von Euch mir helfen?
Besten Dank und viele Grüße,
Frank
Hallo,
wieso benutzt Du dazu keinen Hash?
$hashname{'test'} = "blablabla";
oder
$hashname{$wasdununkennst} = "blablabla";
Viele Grüße
Philipp
Hallo,
Mein Problem: ich habe einen Variable, die einen String enthält (den ich erst zur Laufzeit des Scripts kenne) und diesen will ich als Variablennamen nutzen. Beispiel:
$varname="test";
#hier möchte ich der Variablen mit dem Namen aus $varname, also $test, einen Wert zuweisen...
my $varname = 'test';
$$varname = 'inhalt';
print $test;
__END__
Allerdings ist das unsauber und läuft darum auch nicht unter use strict.
Besser finde ich die Verwendung eines Hashes:
#!perl -w
use strict;
my $name = 'test';
my %var;
$var{$name} = 'inhalt';
print $var{test};
__END__
Gruß Kai
Dank Euch beiden!
Auf die einfachsten Sachen kommt man oft nicht! Nun werde ich erstmal das Wochenende genießen!
Gruß Frank