{
'A' => ['B'], //hash of array
'C' => {'D' => [ 'E']} //hash of hash of array
}
При попытке проанализировать хеш массива. получение «Не ссылка HASH» ошибка. Даже я пытался использовать существующие и определенные ключевые слова, чтобы избежать этой ошибки. Но результат такой же.Как разыменовать только хэш хэш массива в Perl?
Сверху мне нужно только перебирать хэш хэш массива.
foreach my $keys (keys %$hash){
print "$keys";
if (defined $hash->{$keys}->{maptype}){
foreach my $array_element (@{$hash->{$keys}->{'D'}}) {
print "$array_element");
}
}
}
Комментарии написаны с '# 'в Perl, а не' '//. – simbabque
Что такое "maptype"? Если вы проверяете, является ли значение хэш-ключа ссылкой, вам нужно использовать ['ref'] (http://perldoc.perl.org/functions/ref.html). –