我正在使用Perl和PHP解析单个配置文件,我想确保它们得到完全相同的结果。因此,我想将解析后的配置导出到另一个文件或(最好)只打印它(按键按字母顺序排序)。如果没有对$config->varlist(".")
或$config->_dump()
结果进行一些丑陋的解析,是否有一些简单的方法可以做到这一点?这些都包含像hash()
个密钥的垃圾,一些名为1
的密钥以及PEDANTIC
等AppConfig配置选项的值。
答案 0 :(得分:0)
结束以下代码,该代码适用于严格,警告和污点模式:
my %config_state = (
CASE => 1,
PEDANTIC => 1);
my %config_defs = ('db_user=s' => {}, ...);
...
my $config = AppConfig->new(%config_state);
for my $key (keys %config_defs) {
$config->define($key => $config_defs{ $key })
}
...
# Dump configuration to temporary file
open CONFIG, '>configuration.ini' or die $!;
my $varname;
for my $key (sort keys %config_defs) {
$varname = substr $key, 0, -2;
print CONFIG "$varname = ";
print CONFIG $config->get($varname) if defined($config->get($varname));
print CONFIG "\n";
}
close CONFIG or die $!;