位置:首页 > 脚本语言 > PHP在线教程 > PHP条件决策

PHP条件决策

 if, elseif ...else 和 switch语句用于采取基于不同的条件决策。

可以使用条件语句中的代码。PHP支持以下三种决策语句:

  • if...else statement - 当条件为true时,if 执行一组代码;else 条件不是真的使用此语句;
  • elseif statement - 用于 if...else 语句执行一组代码如果几个条件有一个为真;
  • switch statement - 如果想选择很多代码块来执行,使用switch语句使用。 switch语句是用来避免 if..elseif..else 长的代码块。

If...Else 语句

如果条件为true,执行一些代码,如果一个条件为假则执行另一个代码,那么使用if.... else语句。

语法

if (condition)
  code to be executed if condition is true;
else
  code to be executed if condition is false;

例子

下面的例子如果当前日期是周五,将输出"Have a nice weekend!",否则会输出 "Have a nice day!":

<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
  echo "Have a nice weekend!"; 
else
  echo "Have a nice day!"; 
?>
</body>

</html>

如果如果条件为true/false多行应该执行时,应行大括号括起来:

<html>

<body>
<?php
$d=date("D");
if ($d=="Fri")
  {
  echo "Hello!<br />"; 
  echo "Have a nice weekend!";
  echo "See you on Monday!";
  }
?>
</body>
</html>

ElseIf 语句

如果想执行一些代码,如果几个条件中的一个为true,那么可以考虑使用elseif语句

语法

if (condition)
  code to be executed if condition is true;
elseif (condition)
  code to be executed if condition is true;
else
  code to be executed if condition is false;

示例

下面的例子如果当前为星期五将输出 "Have a nice weekend!",如果当前日期是星期天,它会输出"Have a nice Sunday!"。否则它会输出 "Have a nice day!":

<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
  echo "Have a nice weekend!"; 
elseif ($d=="Sun")
  echo "Have a nice Sunday!"; 
else
  echo "Have a nice day!"; 
?>
</body>
</html>

Switch 语句

如果想选择多代码块中的一个执行,使用switch语句。

switch语句是用来避免 if..elseif..else 长的代码块。.

语法

switch (expression)
{
case label1:
  code to be executed if expression = label1;
  break;  
case label2:
  code to be executed if expression = label2;
  break;
default:
  code to be executed
  if expression is different 
  from both label1 and label2;

}

示例

switch语句的工作原理以不一样的方式。首先它计算给定的表达式,然后寻求一个标签,可以匹配所产生的值。如果找到一个匹配值,则具有匹配标签相关的代码会被执行或者如果没有一个标贴的匹配,那么语句将执行任何指定的默认(default)代码。

<html>
<body>
<?php
$d=date("D");
switch ($d)
{
case "Mon":
  echo "Today is Monday";
  break;
case "Tue":
  echo "Today is Tuesday";
  break;
case "Wed":
  echo "Today is Wednesday";
  break;
case "Thu":
  echo "Today is Thursday";
  break;
case "Fri":
  echo "Today is Friday";
  break;
case "Sat":
  echo "Today is Saturday";
  break;
case "Sun":
  echo "Today is Sunday";
  break;
default:
  echo "Wonder which day is this ?";
}
?>
</body>
</html>