我有几个哈希。下面有值
$data->{reports}->{$port}->{tb}->{tb});
$data->{reports}->{$port}->{tb}->{change});
$data->{reports}->{$port}->{tb_pbd}->{tb_pbd});
值为:
$VAR1 = {
'4|EXPENSES|Net Income' => '8658617.49'
};
$VAR1 = {
'4|EXPENSES|Net Income' => '8728605.17'
};
$VAR1 = {
'4|EXPENSES|Net Income' => '-69987.68'
};
单独的变量具有值:
$keyee
value = 1|ASSETS|11240-000
但是,当我将此值放入所有哈希值时,例如:
$data->{reports}->{$port}->{tb}->{tb}->{$keyee}
它成了undef。知道为什么以及如何进行治疗?
答案 0 :(得分:-1)
哈希键只能包含一个值。要存储与单个键关联的多个值,您需要使用数组的哈希值。
代码示例:
my %myhash;
$myhash{'tb'}="val1";
$myhash{'tb'} ="vale2";
在上面的例子中,tb
键只有一个值。
现在,如果要同时获取与tb
键关联的值,请使用数组的哈希值。
代码示例
push(@{$myhash},"val1");
push(@{$myhash},"val2");
希望上述概念对您有所帮助。
有关数组访问哈希的更多信息:http://docstore.mik.ua/orelly/perl2/prog/ch09_02.htm