理解循環(huán)內(nèi)部的機(jī)制 更易于記憶 foreach 的reset特性,分支結(jié)構(gòu)中理解了,switch..case的執(zhí)行步驟也就不難理解為什么效率高了
流程控制
請列出3中php中數(shù)組循環(huán)操作的語法,并注明各種循環(huán)的區(qū)別
(php遍歷數(shù)組的三種方式 及三種區(qū)別)
for?
只能遍歷索引數(shù)組
foreach
可以遍歷索引和關(guān)聯(lián)數(shù)組
會進(jìn)行reset()操作 重置指針
while? list() each() 組合?
可以遍歷索引和關(guān)聯(lián)數(shù)組
不會reset(); 不會重置
分支結(jié)構(gòu)
if? elseif
在elseif語句中只能有一個表達(dá)式為true,即在elseif語句中只能有一個語句塊被執(zhí)行,多個elseif從句是排斥關(guān)系
使用elseif基本原則,可能性越大 往前面放
如果判斷的內(nèi)容比較復(fù)雜并且判斷的內(nèi)容是整型 浮點類型或者字符串
可以用switch...case進(jìn)行替換,效率會更高
switch一般效率高
switch.....case? switch($var){
case...:
break;
}
$var整型 浮點類型或者字符串
continue語句作用到switch的作用 類似于break
跳出switch 外的循環(huán) continue2跳出兩層
switch.....case會生成跳轉(zhuǎn)表,直接跳轉(zhuǎn)到對應(yīng)的case
switch 后面的控制表達(dá)式的數(shù)據(jù)類型只能是整型 浮點類型或者字符串
如果條件比較復(fù)雜或者在很多次的循環(huán)中,用switch語句可能會快一些