我在 Perl 和内置函数方面遇到了一些麻烦eval http://perldoc.perl.org/functions/eval.html。
我浏览了网络,但找不到任何答案或示例代码。
我想动态加载模块(在执行时间之前我不知道它们)
$module_name="Auth_Auth_Test";
my $ret1;
ret = eval{
"use ".$module_name;
$ret1 = $module_name."::test(".$log.")";
};
$log->debug ($@) if $@;
$log->debug ("Ret".$ret1);
回报是:
RetAuth_Auth_Test::测试(自定义::Log=HASH(0x1194468))
以下方法对我有用,但我无法使用相同的子例程加载多个模块:
my $use = "use ".$module_name." qw(&test)";
$ret = eval $use;
# Debug for eval
$log->debug ($@) if $@;
$ret = test($log);
感谢您的任何帮助
Use 模块::加载 http://p3rl.org/Module%3a%3aLoad反而。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)