まくまくPerlノート
if/unless による分岐処理
2008-03-14

下記は if を使用した基本的な条件分岐の構造です。 else if ではなく、elsif であることに注意してください。 Ruby と同じですね。

if ($val == 0) {
    # ...
} elsif ($val > 0) {
    # ...
} else {
    # ...
}

それぞれのコードブロックは、必ず {} で囲む必要があります。 if の代わりに unless を使うと、条件式の判定を反転させることができます。

unless ($val == 0) {
    # 0 でないとき実行される
}

式修飾子 (expression modifier) を使用すると、次のようにひとつの文で分岐処理を完結させることができます。 英語のように読めるコードになるので、適切な場所で使うと可読性が上がります。

print "Hello\n" if $val == 0;
print "Hello\n" unless $val == 0;
2008-03-14