Perl 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
可以通过下图来简单了解条件语句的执行过程:

注意,数字 0, 字符串 '0' 、 "" , 空 list() , 和 undef 为 <b>false</b> ,其他值均为 <b>true</b>。 true 前面使用 <b>!</b> 或 <b>not</b>则返回 false 。
Perl 提供了下拉的条件语句:
语句
描述
if 语句
一个 <b>if 语句</b> 由一个布尔表达式后跟一个或多个语句组成。
if...else 语句
一个 <b>if 语句</b> 后可跟一个可选的 <b>else 语句</b>,else 语句在布尔表达式为假时执行。
if...elsif...else 语句
您可以在一个 <b>if</b> 语句后可跟一个可选的 <b>elsif 语句</b>,然后再跟另一个 <b>else 语句</b>。
unless 语句
一个 <b>unless 语句</b> 由一个布尔表达式后跟一个或多个语句组成。
unless...else 语句。
一个 <b>unless 语句</b> 后可跟一个可选的 <b>else 语句</b>。
unless...elsif..else statement
一个 <b>unless 语句</b> 后可跟一个可选的 <b>elsif 语句</b>,然后再跟另一个 <b>else 语句</b>。
switch 语句
在最新版本的 Perl 中,我们可以使用 <b>switch</b> 语句。它根据不同的值执行对应的代码块。
我们可以使用 <b>条件运算 ? :</b> 来简化 <b>if...else</b> 语句的操作。通常格式为:
如果 Exp1 表达式为 true ,则返回 Exp2 表达式计算结果,否则返回 Exp3。
实例如下所示:
#!/usr/local/bin/perl
$name = "菜鸟教程";
$favorite = 10; # 喜欢数
$status = ($favorite > 60 )? "热门网站" : "不是热门网站";
print "$name - $status\n";
执行以上程序,输出结果为: