仅在子例程中需要时才使用 Perl 模块

约翰尼·卢

想象一下我的脚本有这两个子

sub with_json_mod{
    use JSON::Tiny;
    blah blah blah;
}

sub without_json_mod{
   blah blah blah;
}

我只想without_json_modJSON::Tiny没有安装使用

如果JSON::Tiny未安装Perl,如何使 Perl 不失败,而是使用without_json_modsub ?

我试着拨打requirewith_json_mod,它似乎工作,但是当我试着让它导入它不起作用encode_json子在

sub with_json_mod{
    require JSON::Tiny qw/encode_json/;
    blah blah blah;
}
清醒

那是因为你调用require错误。

你需要的是:

require JSON::Tiny;
JSON::Tiny -> import ( 'encode_json' );

您也可以将其包装在 'eval' 中,并测试 的值$@

eval { require JSON::Tiny; };
warn $@ if $@;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章