Open Source Web Development Tutorials - Dev Shed
Perl入門:条件文
(2009/02/25公開)
いいか、さもないと!
著名な作家は、その豊かさの一環として周囲の人々を支配する。1日に何度と無く、周囲の雇い人をしかりつけて、あわてさせる。[いいだろう、夢を見ていろ-エド]。してほしいことをしなかった場合、筆者は彼らにIf文とElse節を与える。
#!/usr/bin/perl
$do_my_bidding = 'Yes Master!';
if ($do_my_bidding = 'Yes Master!'
{
print "You are a good slave. Tell your mother I will see her tonight";
}
else
{
print "You ignorant buffoon! Tell your mother I will see her on my lunch break!";
print "Get out of my sight!";
上のコードでは、$do_my_biddingに値「Yes Master!」が格納され、次の結果が出力される。
You are a good slave. Tell your mother I will see her tonight.
Get out of my sight!
$do_my_biddingにほかの値が格納された場合、出力は次のようになる。
You ignorant buffoon! Tell your mother I will see her on my lunch break!
Get out of my sight!
「Get out of my sight!」はどちらの条件にも含まれていないから、条件に関係なく出力される。
Elsif
Else節が1つだけでは不足することがある。そのような場合にはElseifを使用すると便利だ。下の例を見てほしい。
#!/usr/bin/perl
$do_my_bidding = 'Yes Master!';
{
print "You are a good slave. Tell your mother I will see her tonight";
}
elsif ($do_my_bidding = 'No')
print "Insolent swine! Tell your mother to come right now!";
else
{
print "You ignorant buffoon! Tell your mother I will see her on my lunch break!";
print "Get out of my sight!";
上のコードでも、$do_my_biddingの値が「Yes Master!」の場合は、前の例のように出力される。
You are a good slave. Tell your mother I will see her tonight.
Get out of my sight!
ただ、このコードでは、$do_my_biddingの値が「No」の場合は、次のように画面に出力される。
Insolent swine! Tell your mother to come right now!
Get out of my sight!
また、$do_my_biddingの値がいずれでもない場合は、次のように出力される。
You ignorant buffoon! Tell your mother I will see her on my lunch break!
Get out of my sight!
次の2つのことに気が付いただろう...1) 「Get out of my sight!」は条件文の外側にあるため常に出力される。 2) どのように返答しても、結果は同じ。いつ、そうするかだけの問題だ。
Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.








