1

私は次のものを持っています

use Config::IniFiles;
my $cfg = new Config::IniFiles( -file => "/path/configfile.ini" );
print "The value is " . $cfg->val( 'Section', 'Parameter' ) . "."
if $cfg->val( 'Section', 'Parameter' );

上記はほとんどすべての意味がありますが、何-fileが意味するのかわかりませんでした

my $cfg = new Config::IniFiles( -file => "/path/configfile.ini" );

上記は$file、関数のパラメーターがに設定されると言ってい/path/configfile.iniますか?それとも別のものですか

4

3 に答える 3

2

このコンテキストで-fileは、通常の文字列です。つまり、式は次のように記述できます。

my $cfg = Config::IniFiles->new("-file" => "/path/configfile.ini");

この=>演算子により、左側の単語が文字列として解釈されるため、引用符で囲む必要はありません。

于 2012-08-09T10:03:00.597 に答える
-1

Config::IniFilesドキュメントから:

-ファイル名

パラメータをロードするファイルを指定します。この「ファイル」は、実際には次のいずれかである可能性があります。

  1. ファイルのパス名

    $cfg = Config::IniFiles->new( -file => "/path/to/config_file.ini" );
    
  2. 単純なファイルハンドル

    $cfg = Config::IniFiles->new( -file => STDIN );
    
  3. ファイルハンドルグロブ

    open( CONFIG, "/path/to/config_file.ini" );
    $cfg = Config::IniFiles->new( -file => *CONFIG );
    
  4. グロブへの参照

    open( CONFIG, "/path/to/config_file.ini" );
    $cfg = Config::IniFiles->new( -file => \*CONFIG );
    
  5. IO::Fileオブジェクト_

    $io = IO::File->new( "/path/to/config_file.ini" );
    $cfg = Config::IniFiles->new( -file => $io );
    

    また

    open my $fh, '<', "/path/to/config_file.ini" or die $!;
    $cfg = Config::IniFiles->new( -file => $fh );
    
  6. スカラーへの参照 (新しいバージョンの が必要IO::Scalar)

    $ini_file_contents = <<EOT
    [section name]
    Parameter=A value
    Setting=Another value
    EOT
    
    $cfg = Config::IniFiles->new( -file => \$ini_file_contents );
    
于 2012-08-09T10:00:01.473 に答える