【问题标题】:"include"-esque function for PerlPerl 的“include”-esque 函数
【发布时间】:2023-03-05 13:46:02
【问题描述】:

我有一个函数,我想在两个不同的 Perl 脚本中定义,但不喜欢同时编辑这两个脚本。有没有办法可以从外部文件include它(比如在 PHP 中)?

功能文件:

sub test {

}

文件 1:

include func_file;
foo();
bar();
test();

文件 2:

include func_file;
blah();
test();

【问题讨论】:

标签: perl function include


【解决方案1】:

狭隘地回答这个问题:

是的,您可以使用 require('filename') 函数包含文件。

一般地回答这个问题:

Perl 有一套完整的机制,通过它的包机制来定义和导出函数。这是described in perlmod。您应该真正使用这种机制,因为您最终可以将模块打包成一个 CPAN 模块,并使其可供其他人使用,或者简单地自己安装在其他系统上。

【讨论】:

    【解决方案2】:

    功能.pm:

    package Func;
    
    use Exporter qw( import );
    our @EXPORT = qw( test );
    
    sub test {
    }
    
    1;
    

    文件1.pl:

    use Func;
    
    test();
    

    【讨论】:

    • 导入的文件必须返回真值。
    • use/require 用于模块,do 否则。 details
    猜你喜欢
    • 1970-01-01
    • 2017-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多