0

我写了一个使用不同模块的脚本。脚本循环,返回到开头,直到达到某个 id 并且死亡。

但有时,模块查询的结果是未定义的,脚本会停止。在我目前的情况下:

Can't use an undefined value as a HASH reference at /modulepath/module.pm line xxx

如何告诉 Perl,不要停止和跳过当前处理?我尝试使用以下方法但没有成功:

if (defined $var->movie( id => $imdb )){ 
#do the usual stuff 
}
else {
#skip and do nothing
}
4

2 回答 2

3

检查是否$var也定义了。

if (defined $var && defined $var->movie( id => $imdb )){ 
于 2012-10-17T15:44:22.227 回答
0

用于eval防止代码中止您的脚本。

eval {
  # code that might blow up
};
if ($@) { 
  # it blew up, but we're still running
} 
于 2012-10-17T15:42:02.473 回答