Попытка перебрать массив хэшей и получить сообщение об ошибке, которое я не понимаю.
Ниже приведен код, который создает массив хэшей с использованием Dumper. Кажется, в нем есть все.И вот так все работает нормально.
while ($getAdUserInfo->fetch()){
$name = $name || '';
$isactive = $isactive || '';
$loginid = $loginid || '';
$account_status = $account_status || '';
$password = $password || '';
#print "$name, $isactive, $loginid, $account_status, $password\n";
my %row = (
name => $name,
isactive => $isactive,
loginid => $loginid,
account_status => $account_status,
password => $password,
);
push(@adUserInfo, %row);
}
Но если я добавлю этот код, чтобы пройти через него
for my $rowRef (@adUserInfo) {
print $rowRef->{password};
}
Я получу эту ошибку Не могу использовать строку ("пароль") какссылка на HASH, в то время как «строгие ссылки» используются в строке adempiereToExo.pl 64
Теперь я немного прочитал об этой ошибке, и в большинстве случаев похоже, что это происходит, когда у кого-то есть что-то в массивеэто не ссылка на хешНо я не думаю, что это так.Я очень плохо знаком с Perl, поэтому могу ошибаться.Кроме того, это всегда последний элемент хэша, о котором он стонет?
Я знаю, что многие люди спрашивают об этой ошибке, но я прочитал много ответов и до сих пор не могу понять.