JSON(::XS|::PP)でのBoolean判定
2014年11月23日
APIをぶっ叩いて、jsonを受け取るとかよくある処理だと思いますけど、結果がBoolean(true|false)で返ってくる場合、なんとなく下記のように
if ( $json->{'is_ok'} eq 'true' ) {
# ...
}
なんてやってしまいがちですが・・そうじゃない。
use JSON;
my $json_data = '{"is_ok": true}';
my $json = JSON->new->utf8->decode($json_data);
if ( $json->{'is_ok'} ) {
print 'true!!';
}
else {
print 'false';
}
eqを使わずに、そのままBoolean値として判定可能のようです。