给出类似的东西
foreach (keys %myHash) {
... do stuff ...
}
foreach (keys %myHash) {
... do more stuff ...
}
Run Code Online (Sandbox Code Playgroud)
如果散列没有被改变,Perl是否保证以一致的顺序迭代密钥?
我从html表单获取输入.有一堆文本输入,因此有一堆键值对.当一个人有超过三对时,你会看到我现在的方法非常乏味.那,或者我只是懒惰.
我想知道,是否有更有效的方法将哈希转换为一系列标量变量?我希望密钥是变量名,设置为密钥的值.
我对perl比较新,对不起,如果这是一个愚蠢的问题.
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use CGI qw(:standard Vars);
print "Content-type: text/html\n\n";
my %form = Vars();
$hourly = $form{hourly};
$hours_w = $form{hours_w};
$rent_m = $form{rent_m};
#...
Run Code Online (Sandbox Code Playgroud) 如何将 Perl hashref 解压缩为多个命名标量变量?
我已经看到它完成了,但似乎无法使其发挥作用。
假设给定的以及to$hashref的定义,这是我的尝试:$arg1$arg3
my $hashref = { arg1 => 'val1', arg2 => 'val2', arg3 => 'val3',};
my ($arg1,$arg2,$arg3) = @{%$hashref}[qw(arg1 arg2 arg3)];
Run Code Online (Sandbox Code Playgroud)