如何循环哈希?

Tha*_*ama 2 perl hash perl-data-structures

给出以下变量:

$test = {
  '1' => 'A',
  '2' => 'B',
  '3' => 'C',
  '4' => 'G',
  '5' => 'K',
}
Run Code Online (Sandbox Code Playgroud)

如何在不知道我拥有哪些密钥的情况下循环完成所有分配?

我想填充一个选择框,其结果为标签,键为隐藏值.

Tot*_*oto 5

只需在键上执行foreach循环:

#!/usr/bin/perl
use strict;
use warnings;

my $test = {
  '1' => 'A',
  '2' => 'B',
  '3' => 'C',
  '4' => 'G',
  '5' => 'K',
};

foreach my $key(keys %$test) {
    print "key=$key : value=$test->{$key}\n";
}
Run Code Online (Sandbox Code Playgroud)

输出:

key=4 : value=G
key=1 : value=A
key=3 : value=C
key=2 : value=B
key=5 : value=K
Run Code Online (Sandbox Code Playgroud)