位置:首頁 > 腳本語言 > 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>