全局符号“$ variable”需要在filename.pl上显式包名

时间:2013-12-21 12:57:49

标签: perl

根据我对perl的理解,我认为错误消息意味着我有一个名为 $ something 的未声明变量?我有一个 foreach 声明:

foreach my $as (@ARRAYY) {
            $db-> execute($as->[1],$as->[0],$Key);
        } 

我在 $ as 上收到错误说:

Global symbol "$as" requires explicit package name at filename.pl

我的困惑是,在foreach声明中是否已经声明了$? as:

在foreach关键字之前

我的$ as?

感谢您的阅读。非常感谢您的想法!

更新

foreach my $as (@ASPATH) {
            #print "\tASPATH : $as->[0]","\t" ;
            #print "\tASINDEX : $as->[1] \n" ;
            $as_path->execute($as->[1],$as->[0],$UpdateKey);
        } 

1 个答案:

答案 0 :(得分:3)

根据要求将评论作为回答发布。

错误可能有两件事:

    在其他地方可以看到
  1. $as
  2. 在for循环上面有某种语法错误(缺少括号,分号等),这会中断my $as声明。