求和步驟:1、定義一個變數賦值0,用於儲存求和結果,語法「$sum=0;」;2、利用while語句和each()、list()函數來遍歷數組,語法“while(list($key,$val)=each($arr)) {//循環體語句塊;}”;3、在循環體中,利用“ =”運算符將數組元素一個個相加求和,語法“$sum =$val;”,循環結束後,“$sum”的值就是求和結果。
本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦
while循環語句是一種當型循環語句,先對循環條件進行判斷,當條件滿足,則執行循環體,不滿足時則停止。
while(表达式){ //表达式为循环条件 PHP语句块; //PHP语句块为循环体 }
語句解析:
先計算「表達式」的值,當值為真時, 執行循環體內的「PHP語句區塊」;
說明:「表達式」的計算結果是布林類型( TRUE 或FALSE)的,如果是其他類型的值也會自動轉換為布林類型的值(因為PHP是弱語言類型,會根據變數的值,自動把變數轉換為正確的資料型態)。
「語句塊」就是由
{ }
所包圍的一個或多個語句的集合;如果語句區塊中只有一個語句,也可以省略{ }
。
執行結束後,返回表達式,再次計算表達式的值進行判斷,當表達式值為真,則繼續執行“語句區塊” ……這個過程會一直重複
直到表達式的值為假時才跳出循環,執行while 下面的語句。
在PHP中,while語句可以配合each()、list()函數的使用來遍歷數組並求和。
each() 函數傳回陣列中目前的鍵值並將陣列指標向前移動。在執行 each() 之後,數組指標將停留在數組中的下一個元素或當碰到數組結尾時停留在最後一個元素。
而list() 函數用於在一次運算中給一組變數賦值。
實作步驟:
步驟1:定義一個變數賦值0,用於儲存求和結果
$sum=0;
步驟2:利用while循環each() 函數list() 函數遍歷數組
while( list($key, $val) = each($arr) ) { //循环体语句块; }
步驟3:在迴圈體中,利用「 =」運算子將陣列元素一個個相加求和
$sum+=$val;
迴圈結束後,$sum的值就是求和結果。
實作範例:
<?php header('content-type:text/html;charset=utf-8'); $arr = [1,2,3,4,5,6,7,8,9,10]; var_dump($arr); $sum=0; while( list($key, $val) = each($arr) ) { $sum+=$val; } echo "数组偶数和为:".$sum; ?>
說明:
each() 函數
each() 函數傳回目前元素的鍵名和鍵值,並將內部指標向後移動。
提示:each() 函數在 PHP 7.2.0 中被棄用了。
該元素的鍵名和鍵值會回到帶有四個元素的陣列中。兩個元素(1 和 Value)包含鍵值,兩個元素(0 和 Key)包含鍵名。
each(array)
傳回值:傳回目前元素的鍵名和鍵值。此元素的鍵名和鍵值會返回到帶有四個元素的陣列中。兩個元素(1 和 Value)包含鍵值,兩個元素(0 和 Key)包含鍵名。如果沒有更多的陣列元素,則函數會傳回 FALSE。
list() 函數
list() 函數用於在一次運算中將一組變數賦值。
list(var1,var2...)
參數 | 描述 |
---|---|
#var1 | 必需。第一個需要賦值的變數。 |
var2,... | 可選。更多需要賦值的變數。 |
傳回值: 傳回被賦值的陣列。
推薦學習:《PHP影片教學》
以上是php數組怎麼用while求和的詳細內容。更多資訊請關注PHP中文網其他相關文章!