perl 包後綴名一般爲 .pm
perl包裏面可以使用所有的perl數據結構,和自定義函數。
一般perl包的文件名和包名一致,當然也可以不一致,但那樣會不容易維護,
.pm文件的末尾用 1; 結束。
vi Conf.pm
#!/usr/bin/perl
package Conf;
require Exporter;
@ISA=qw(Exporter);
@EXPORT=qw(ret); #在此數組中表明允許使用者使用哪些變量及函數;
my @arr=(
{
'name'=>'Tom',
'age'=>'3',
},
);
sub ret(){
return \@arr;
}
1;
vi main.pl#!/usr/bin/perl
use Data::Dumper;
use Conf;
my $a=ret();
print $a->[0]->{'name'};
運行結果:
上面是perl包的基本用法。
除此之外,perl包還可以當類使用:
vi class.pm
#!/usr/bin/perl
package class;
@ISA=(Exporter);
sub new()
{
my $class=shift;
my $self={};
print "$class\n";
$self->{'word'}=shift;
bless $self,$class;
return $self;
}
sub s_print()
{
$self=shift;
print "$self->{'word'}\n";
}
1;
#!/usr/bin/perl
use class;
my $cl=class->new("I'm coming \n");
$cl->s_print();
1.包名可以用 "->" 符號調用包裏面的所有方法。
2.對象可以用 "->" 符號調用包裏面除了 new 之外的所用方法。
關於包裏面的方法:
1. new方法的第一個參數是 類名(包名)。
2. 其他方法的第一個參數是調用它的對象名或者類名。
這樣 perl便可以實現面向對象。