我有一些这样的陈述:
my $name = $criteria->{'name'} if $criteria->{'name'};
my $age = $criteria->{'age'} if $criteria->{'age'};
my $dob = $criteria->{'dob'} if $criteria->{'dob'};
.
.
.
# there are around 8 of these
我想做类似的事情:
foreach (qw/name age dob .../) {
${$_} = $criteria->{$_} if $criteria->{$_};
}
我确定我以前做过这个,但是当我尝试使用它时,use strict
它抛出了一个错误。
有没有办法做到这一点?还是有更好的方法来做我想做的事?我只是真的很懒惰,但如果有办法做到这一点,那会很有趣。
如果可以的话,在内存方面运行会更有效吗?我正在尝试提高脚本的速度。