我最近遇到一个问题:如何在 perl Mason Framework 中定义一个全局变量?我需要定义一个变量并为其分配一个值,该值将从所有 Mason 组件中可见,但我所有的尝试都碰巧不成功,因为组件告诉他们看不到该变量。
提前致谢。
您需要在 Apache 配置中的allow_globals参数中或在构建 Mason 解释器对象时声明全局变量。
使用 Mason 解释器对象时的示例:
my $interp = HTML::Mason::Interp->new(
...,
allow_globals => [
'$global',
],
);
Apache 配置示例:
PerlAddVar MasonAllowGlobals $global