Perl变量值作为另一个变量名

Perl变量值作为另一个变量名,perl,variable-assignment,dynamic-variables,Perl,Variable Assignment,Dynamic Variables,我有一个perl脚本(abc.pl)和两个配置文件(一个var.pl和一个config.txt) 现在 在损益中 $admin_userid = "admin"; $guest_userid = "guest"; 在config.txt中-其值为user-可以是admin或guest user=admin/guest 在abc.pl中 require var.pl $get_user = admin or guest (get this value from config.txt) **$

我有一个perl脚本(abc.pl)和两个配置文件(一个var.pl和一个config.txt)

现在

在损益中

$admin_userid = "admin";
$guest_userid = "guest";
在config.txt中-其值为user-可以是admin或guest

user=admin/guest
在abc.pl中

require var.pl

$get_user = admin or guest (get this value from config.txt)
**$myfinal_userid = ??**
如果config.txt中的用户是admin,我希望myfinal_user_id的值为admin,如果是guest,则为guest

i、 e.基于$get_user的值,我想要userid-${$get_user}的值。“\u userid” 例如:如果config.txt的user=admin,那么$get\u user=admin和我想要的$myfinal\u userid=$admin\u userid。客人也一样。这必须是动态的


最后,我想要的是,从config.txt了解用户,并根据它从var.pl获取用户ID,并将其存储在myfinal_用户ID中


让我知道如何在perl中实现这一点?

使用哈希存储id:

my %id = ( admin => 'admin',
           guest => 'guest',
         );

my $get_user = 'admin';  # Read this from the config.
my $final_id = $id{$get_user};

my $other_user = 'guest';
my $another_final_id = $id{$other_user};

print $final_id, "\n", $another_final_id, "\n";

你的解释不清楚。我没有得到你想要的。请尽量解释得更清楚些。你最终想做什么?也告诉我们下一步。我认为您的整个过程可以得到优化,这样问题就可以解决了。最后,我想要的是,从config.txt了解用户,并基于此,从var.pl获取用户ID,并将其存储在myfinal_userid中。每当您读到类似“variable name”的内容时,哈希就可以解决问题。