Config::Simpleの設定値にfalse/true(boolean値)って使えるの?
あらまし
もちろんPerlにはboolean型などない。
では、Config::Simpleの設定値としてはfalse/trueは使えるんだろうか?
実験
test.ini
[TEST] HOGE1 = 1 HOGE0 = 0 HOGET = true HOGEF = false
test.pl
#!/usr/bin/perl use strict; use Config::Simple; my $cfg = new Config::Simple('test.ini'); my @hoge = ('TEST.HOGE0','TEST.HOGE1','TEST.HOGET','TEST.HOGEF'); foreach(@hoge){ my $boolean = $cfg->param($_) ? 'true' : 'false'; print qq(--- $_\n); print "num: ".($cfg->param($_)-0)."\n"; print "char: ".$cfg->param($_)."\n"; print qq(boolean: $boolean\n); } exit;
実行
$ perl test.pl --- TEST.HOGE0 num: 0 char: 0 boolean: false --- TEST.HOGE1 num: 1 char: 1 boolean: true --- TEST.HOGET num: 0 char: true boolean: true --- TEST.HOGEF num: 0 char: false boolean: true
結論
使えません。
やばり「false」と書いても「'false'という文字列」として解釈されるだけでした。