我似乎无法打印hashref的值.
我可以这样打印键:
foreach (sort keys %$wss_href) { print "$_\n"; }
我想打印每个键的值:
所以我试过了:
print "$_ => $wss_href{$_}\n"; print "$_ => $%$wss_href{$_}\n";
并且它一直给我一个错误全局符号“%wss_href”需要显式包名
我如何deference hashref来获取每个键的值?
解决方法
如果它是哈希的%NAME,则哈希引用为%{REF}.
如果哈希值为$NAME {EXPR},则哈希引用为${REF} {EXPR}.
看模式?
您正在寻找以下内容:
for (sort keys %{ $wss_href }) { print "$_ => ${ $wss_href }{$_}\n"; }
如果引用表达式只是一个变量,则可以省略curlies.
for (sort keys %$wss_href) { print "$_ => $$wss_href{$_}\n"; }
但是你也可以使用更清晰的语法.
for (sort keys %$wss_href) { print "$_ => $wss_href->{$_}\n"; }
> Mini-Tutorial: Dereferencing Syntax
> References quick reference
> perlref
> perlreftut
> perldsc
> perllol