什么是Perl模块?

Perl模块是在库文件中定义的可重用软件包,该文件的名称与扩展名为.pm的软件包的名称相同。

一个名为Foo.pm的Perl模块文件可能包含这样的语句。

#!/usr/bin/perl

package Foo;

sub bar {

   print "Hello $_[0]\n"

}

sub blat {

   print "World $_[0]\n"

}

1;

关于Perl模块的几点要点

  • 需要和 使用的功能 将加载模块。

  • 两者都使用@INC中的搜索路径列表来查找模块。

  • 这两个函数 都需要并 使用调用 eval函数来处理代码。

  • 1; 在底部导致eval评估为TRUE(因此不会失败)。

需求函数

可以通过调用require函数来加载模块 ,如下所示:

#!/usr/bin/perl

require Foo;

Foo::bar( "a" );

Foo::blat( "b" );

您必须已经注意到,子例程名称必须完全合格才能调用它们。最好将子例程 bar和 blat导入到我们自己的命名空间中,这样我们就不必使用Foo ::限定符。

使用功能

可以通过调用use函数来加载模块 。

#!/usr/bin/perl

use Foo;

bar( "a" );

blat( "b" );

注意,我们不必完全限定包的函数名。如果在模块内添加了一些声明,则use函数将从模块中导出符号列表。

require Exporter;

@ISA = qw(Exporter);

然后,通过填充名为@EXPORT的列表变量来提供符号列表(标量,列表,哈希,子例程等):例如-

package Module;

require Exporter;

@ISA = qw(Exporter);

@EXPORT = qw(bar blat);

sub bar { print "Hello $_[0]\n" }

sub blat { print "World $_[0]\n" }

sub splat { print "Not $_[0]\n" } # Not exported!

1;

安装Perl模块

以tar.gz文件的形式下载Perl模块。按照以下顺序安装任何 已作为Person.tar.gz 文件下载的 Perl模块 Person.pm。

tar xvfz Person.tar.gz

cd Person

perl Makefile.PL

make

make install

Perl解释器有一个目录列表,它在其中搜索模块(全局数组@INC)。

以上是 什么是Perl模块? 的全部内容, 来源链接: utcz.com/z/361902.html

回到顶部