php面試筆記(4) php基礎知識 流程控制

2021-10-02 23:43:29 字數 1692 閱讀 9941

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

答案:

forforeach

while、list()、each()

for()

for迴圈是常見的迴圈結構,但是只能遍歷索引陣列。

foreach()

foreach既可以遍歷索引陣列,也可以遍歷關聯陣列。但是每次呼叫foreach時陣列的內部指標會重置到陣列中的第乙個元素。

while、list()、each()

list()函式可以取出陣列中指定的乙個元素。

each()函式引數必須傳乙個陣列,返回的值也是乙個陣列,該陣列中包含4個元素,且下標一定是固定的(1 value 0 key)。each()函式處理當前陣列中的第乙個元素後,會自動將指標指向下乙個元素,如果指標已經在結束位置了,如果再使用each()獲取元素則返回false。

其使用方法如下:

<?php

/** * created by 冷月小白.

*/$arr=[

'a',

'b',

'c']

;while

(list

($key

,$value)=

each

($arr))

?>

既可以遍歷索引陣列,也可以遍歷關聯陣列。

if……else if

在若干條件之一成立時執行乙個**塊,也就是說一次執行中,只能有乙個**塊被執行。

<?php

/** * created by 冷月小白.

*/if

(條件)

elseif

(條件)

else

?>

大家可以思考一下,如何提高if……else if的效能。答案是,盡可能把範圍小的放到前面來處理。這樣php指令碼在執行中,就可能執行更少的匹配。或者當判斷的條件是整形、浮點、字串時可以使用switch 語句。

switch 語句

switch 語句用於根據多個不同條件執行不同動作。在複雜多層次迴圈中,switch語句可以快一些。

<?php

/** * created by 冷月小白.

*/switch

(x)?>

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

答案:

將條件範圍小的盡可能放在前面處理;

當判斷條件為整形、浮點、字串資料型別時用switch……case……語句。

php面試筆記(1)-php基礎知識-變數和引用變數

php面試筆記(2)-php基礎知識-常量和資料型別

php面試筆記(3)-php基礎知識-運算子

php面試筆記(4)-php基礎知識-流程控制

php面試筆記(5)-php基礎知識-自定義函式及內部函式考點

php面試筆記(6)-php基礎知識-正規表示式考點

php面試筆記(7)-php基礎知識-檔案及目錄處理考點

php面試筆記(9)-php基礎知識-物件導向考點

php面試筆記(4) php基礎知識 流程控制

回顧真題 請列出3種php陣列迴圈操作的語法,並註明各種迴圈的區別 答案 for for迴圈是常見的迴圈結構,但是只能遍歷索引陣列。foreach foreach既可以遍歷索引陣列,也可以遍歷關聯陣列。但是每次呼叫foreach時陣列的內部指標會重置到陣列中的第乙個元素。while list eac...

PHP基礎知識筆記4

日期時間函式 修改php配置檔案的date.timezone 在指令碼中使用date default timezone set 動態設定時區 在指令碼中使用ini set 設定php配置檔案來動態設定時區 2.設定乙個指令碼中所有日期時間函式的預設時區 bool date default timez...

php面試筆記(3) php基礎知識 運算子

abc 和 abc 之間的區別。答案 php 支援乙個錯誤控制運算子 當將其放置在乙個 php 表示式之前,該表示式可能產生的任何錯誤資訊都被忽略掉。使用方法如下 created by 冷月小白.function abc abc 輸出 warning division by zero functio...