each 和 list 結合使用原理

2021-06-26 21:51:21 字數 1025 閱讀 2039

1、each — 返回陣列中當前的鍵/值對並將陣列指標向前移動一步 

each的返回值:

返回 array 陣列中當前指標位置的鍵/值對並向前移動陣列指標。鍵值對被返回為四個單元的陣列,鍵名為》,key 和 value。單元 0 和 key 包含有陣列單元的鍵名,1 和 value 包含有資料。 

示例:

$colorarr = array("a"=>"red","b"=>"yellow","c"=>"blue");

var_dump(each($colorarr));

輸出結果:

array(4)

2、list — 把陣列中的值賦給一些變數。list()  用一步操作給一組變數進行賦值,返回值為乙個陣列。

示例:

$testarr = array("張","王");

$newarr = list($key,$val) = $testarr;

echo "";

var_dump($newarr);

echo "

";

輸出結果:

array(2)

3、each() 和 list() 結合使用

示例:

$colorarr = array("a"=>"red","b"=>"yellow","c"=>"blue");

$keystr = "";

$valstr = "";

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

echo "$keystr

$valstr";

輸出結果:

a b c 

red yellow blue 

4、問題來了:為什麼可以將四個值賦給兩個變數呢?

這裡涉及到了乙個小知識點:list()  僅能用於數字索引的陣列並假定數字索引從 0 開始。所以在它們組合使用的時候,會自動過濾掉each產生的陣列中的非數字鍵名的單元。

each 和 list 結合使用來遍歷陣列

each 函式生成乙個由陣列當前內部指標所指向的元素的鍵名和鍵值組成的陣列,並把內部指標向前移動。返回的陣列中包括的四個元素 鍵名為 0,1,key 和 value。單元 0 和 key 包含有陣列單元的鍵名,1 和 value 包含有資料。如果內部指標越過了陣列範圍,本函式將返回 false。語法...

Java wait和notify結合使用

1 示例 public class testsyncro2 thread t2 new thread new runnable t1.start t2.start class customer catch exception ex this.amount amount system.out.prin...

ajax 和layer結合使用

1 html index.html 父視窗 新增 btn add on click function add.html子介面 2 ajax和layer document ready function 新增成功後提示 parent.layer.close index 關閉彈層的視窗 location....