사람들,
내 이해대로라면 exists
함수는 해시에 키가 있는지 확인합니다. 따라서 아래에 언급 된 상황에서는 key1
또는 key2
이 정의되지 않았습니다. 그 해시 참조 $var
에는 키가 없습니다.
keys(%{$var})
을 호출 할 때 undef가 반환되어야합니다.
어떻게 되가고 있느냐? 그 것이었다. 1. 나는 어떻게 여기에서 놓치고 있냐?
my $var;
if (exists $var->{key1}->{key2}) {
$var->{key1}->{key2} = 1;
}
my $keys = keys(%{$var});
print $keys; #prints 1 to output console
참조 http://stackoverflow.com/q/14803604/725418 – TLP