全局访问perl中的变量

时间:2017-10-20 09:27:39

标签: perl import export global-variables

我有很多文件。在一个文件中,即(Lib::Utils)我有所有通用函数。我需要为两个变量赋值并在Lib::Utils中定义相同的值,我需要将其导出到其他文件。我不应该在其他文件中声明变量。

我试过以下

在Lib :: Utils

package Lib::Utils;

require Exporter;
@ISA = qw(Exporter);

our $FAIL = 0;
our $SUCCESS = 1;

在test.pl

use strict;
use warnings;

use Lib::Utils;

our ($FAIL, $SUCCESS);

print("$FAIL\n$SUCCESS\n");

但我希望将其从Lib::Utils导出到所有其他文件。

1 个答案:

答案 0 :(得分:6)

使用Exporter而不填充@EXPORT@EXPORT_OK毫无意义。

Lib/Utils.pm中,您需要添加

our @EXPORT_OK = qw/ $FAIL $SUCCESS /;

并像这样更改test.pl

use strict;
use warnings 'all';

use Lib::Utils qw/ $FAIL $SUCCESS /;

print "$_\n" for $FAIL, $SUCCESS;