1 4PHP基礎 流程控制

2021-09-29 21:00:46 字數 1558 閱讀 2849

1.請列出3種php陣列迴圈操作的語法,並註明各種迴圈的區別?

for ($i=0; $i < ; $i++) 

foreach ($variable as $key => $value)

reset($fruit);

while (list($key, $val) = each($fruit))

for迴圈只能便利索引陣列

foreach可以遍歷索引和關聯陣列,便利會對陣列進行reset操作

聯合使用list、each、while迴圈同樣可以便利索引和關聯陣列

分支結構,但不會reset把陣列指標重置

each函式在php 7.2.0中已經被棄用。非常不鼓勵依賴這一功能。

2.分支結構if ...elseif ...

在elseif語句中,只能有乙個表示式為true,即在elseif語句中只能有乙個語句塊被執行,多個elseif從句是排斥關係。

使用elseif語句有乙個基本原則,總是優先把範圍小的條件放在前面處理。

3.分支結構switch..case..

switch (variable)

和if不同的是,switch後面的控制表示式的資料型別只能是整形、浮點型別或者字串

在單個switch裡邊continue相當於break

如果switch外有for迴圈,跳出for迴圈使用continue 2;

switch..case..會生成條件索引表,直接跳轉到對應的case,不會一層一層判斷

效率:如果條件比乙個簡單的比較要複雜得多,或者在乙個很多次的迴圈中,那麼用switch語句可能會快一些

4.php中如何優化多個if...elseif語句的情況?

1.優先把範圍小的條件放在前面處理

2.使用switch..case..替換

5.continue 和 break

continue 在迴圈結構用用來跳過本次迴圈中剩餘的**並在條件求值為真時開始執行下一次迴圈。 

note: 注意在 php 中 switch 語句被認為是可以使用 continue 的一種迴圈結構。 

continue 接受乙個可選的數字引數來決定跳過幾重迴圈到迴圈結尾。預設值是 1,即跳到當前迴圈末尾。

break 結束當前 for,foreach,while,do-while 或者 switch 結構的執行。 

break 可以接受乙個可選的數字引數來決定跳出幾重迴圈。 

6.包含執行指定檔案的幾種語法和區別?

require 和 include 幾乎完全一樣,除了處理失敗的方式不同之外。require 在出錯時產生 e_compile_error 級別的錯誤。換句話說將導致指令碼中止而 include 只產生警告(e_warning),指令碼會繼續執行。 

require_once 語句和 require 語句完全相同,唯一區別是 php 會檢查該檔案是否已經被包含過,如果是則不會再次包含。

include_once 可以用於在指令碼執行期間同乙個檔案有可能被包含超過一次的情況下,想確保它只被包含一次以避免函式重定義,變數重新賦值等問題。 

1 4 PHP中的流程控制

php 的遍歷陣列的三種方式 for迴圈 foreach迴圈 while list each 組合迴圈php當中陣列分為 索引陣列 轉換成json是陣列 和關聯陣列 轉換成json是物件 for迴圈只能遍歷索引陣列,foreach可以遍歷索引陣列和關聯陣列,while list each 組合迴圈同...

PHP基礎之流程控制

php中的流程控制語句與其他程式語言類似,這裡就不多說了,直接通過 來看吧。1.if條件語句 if exp statement1 else statement2 很容易理解,如果exp為true,那麼執行statement1,否則執行statement2.此處exp為布林型別。當程式有多個分支的時候...

php流程控制

流程 1 if statements if expression i a 5 i b 4 if i a i b elseif i a i b else 2 邏輯運算子 i a 5 i b 4 i c 6 i d 7 if i a i b i c i d if i a i b i c i d 3 sw...