## 流程控制的替代語法
(PHP4,PHP5,PHP7)
PHP提供了一些流程控制的替代語法,,包括if ,while,for,foreach和switch。替代語法的 基本形式是把左花括號({)換成冒號(:),把右花括號(})分別 換成endif;endwhile;endfor;endforeach;以及eendswitch;。
```
<?php if($a==5): ?>
A isa equal to 5
<?php endif; ?>
```
在上面的例子中,HTML 內容“A is equal to 5”用替代語法嵌套在 *if* 語句中。該 HTML 的內容僅在 $a 等于 5 時顯示。
替代語法同樣可以用在 *else* 和 *elseif* 中。下面是一個包括 *elseif* 和 *else* 的 *if* 結構用替代語法格式寫的例子:
```
<?php
if?($a?==?5):
????echo?"a?equals?5";
????echo?"...";
elseif?($a?==?6):
????echo?"a?equals?6";
????echo?"!!!";
else:
????echo?"a?is?neither?5?nor?6";
endif;
?>
```
> **Note**:
> 不支持在同一個控制塊內混合使用兩種語法。
**Warning**
*switch* 和第一個 *case* 之間的任何輸出(含空格)將導致語法錯誤。例如,這樣是無效的:
```
<?php?switch?($foo):??>
????<?php?case?1:??>
????...
<?php?endswitch??>
```
而這樣是有效的,因為 *switch* 之后的換行符被認為是結束標記 *?>* 的一部分,所以在 *switch* 和 *case* 之間不能有任何輸出:
```
<?php?switch?($foo):??>
<?php?case?1:??>
????...
<?php?endswitch??>
```
- 序言
- 簡介
- PHP是什么?
- PHP能做什么?
- 基本語法
- 類型
- boolean(布爾型)
- integer(整型)
- float(浮點型)
- string(字符串)
- array(數組)
- object(對象)
- callable(可調用)
- resource(資源)
- NULL(無類型)
- 偽類型
- 類型轉換的判別
- 變量
- 基礎
- 預定義變量
- 變量范圍
- 可變變量
- 來自PHP之外的變量
- 常量
- 語法
- 魔術常量
- 表達式
- 運算符
- 運算符優先級
- 算術運算符
- 賦值運算符
- 位運算符
- 比較運算符
- 錯誤控制運算符
- 執行運算符
- 遞增/遞減運算符
- 邏輯運算符
- 字符串運算符
- 數組運算符
- 類型運算符
- 流程控制
- if
- else
- elseif/else if
- 流程控制的替代語法
- while
- do-whille
- for
- foreach
- break
- continue
- switch
- declare
- return
- require
- include
- require_once
- include_once
- goto
- 函數
- 用戶自定義函數
- 函數的參數
- 返回值
- 可變函數
- 內部 (內置)函數
- 匿名函數
- 類與對象
- 簡介
- 基本概念
- 屬性
- 類的自動加載
- 構造函數
- 訪問控制(可見性)