【问题标题】:Export / print Perl AppConfig values导出/打印 Perl AppConfig 值
【发布时间】:2011-10-05 04:21:12
【问题描述】:

我正在使用 Perl 和 PHP 解析单个配置文件,我想绝对确保它们得到完全相同的结果。因此,我想要么将解析后的配置导出到另一个文件,要么(最好)只打印它(按字母顺序排序)。有没有一些简单的方法可以做到这一点,而不会对$config->varlist(".")$config->_dump() 结果进行一些难看的解析?这些都包含像hash() 这样的垃圾键、一些称为1 的键以及像PEDANTIC 这样的AppConfig 配置选项的值。

【问题讨论】:

    标签: perl configuration app-config


    【解决方案1】:

    最终得到以下代码,适用于严格、警告和污染模式:

    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 $!;
    

    【讨论】:

      猜你喜欢
      • 2018-04-25
      • 1970-01-01
      • 2023-01-10
      • 2017-09-30
      • 1970-01-01
      • 1970-01-01
      • 2011-11-06
      • 1970-01-01
      • 2014-10-18
      相关资源
      最近更新 更多