php陣列及其遍歷方式

2021-08-21 17:34:54 字數 2019 閱讀 5944

1.陣列:

索引陣列:索引值是整數,索引陣列是一組有序的變數

關聯陣列索引值是字串,關聯陣列是一種鍵和值對的無序集合

2.生明方式:

直接賦值:$變數名[下標]=資料內容

使用array()語言結構新建陣列:$變數名=array(key1=>value1,key2=>value2,.....,keyn=>valuen);

3.陣列的遍歷:

① for迴圈遍歷:要求是陣列小標是連續數字索引(很少用for迴圈)

$arr = array(1,2,3,5,6,7);

$num = count($arr); //count最好放到for外面,可以讓函式只執行一次

echo "陣列元素的個數

"; for($i=0;$i<$num;$i++)==>

"; }

②foreach語句遍歷:

語法格式一:foreach(array_expression as $value)

例如:

<?php 

foreach($arr as $value)

?>

每次迴圈中,當前元素的值被賦給變數$value,並且把陣列內部的指標向後移動一步。所以下一次迴圈中會得到陣列的下乙個元素,直到陣列的結尾才停止迴圈,結束陣列的遍歷。

語法格式二:foreach(array_expression as $key =>$value)

<?php 

//定義陣列

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

?>

格式一:每次迴圈,將當前變數的值賦值給$value,並且把陣列的指標向後移一步,下一次迴圈

會得到下乙個元素

格式二:跟第一種一樣,只是將當前元素的鍵明也會賦值給$key,可以遍歷出鍵值對。

③聯合使用list()、each()和while迴圈遍歷:可以忽略陣列下標

each()函式:需要傳遞乙個陣列作為引數,返回陣列當前元素的鍵值,並向後移動陣列的指標到

下乙個元素,之道末端返回false

list()函式:不是真正的函式,list()用一步操作給一組變數進行賦值,即把陣列中的值賦給一些變數,

僅能用於數字索引的陣列

list(mixed varnae,mixed....)=array_expression

while迴圈遍歷陣列:

while(list($key,$value)=each(array_expression)

解釋:在每次迴圈中,each()語句將當前的陣列元素的鍵值賦給list()函式的第乙個引數變數$key,並將

當前陣列元素的值賦給list()函式的第二個變數$value,並且each()語句每執行一次還能降陣列內部的指標向後移

一步,直到返回false

<?php 

//定義迴圈的陣列

while(list($k,$v) = each($arr))

?>

④使用陣列的內部指標控制函式遍歷陣列:

current():獲取目前指標位置的內容資料

key():目前指標的索引值

next():將指標移動到下乙個單元

prev():指標倒回一位

end():指標指向最後一位元素

reset():指標無條件移至第乙個索引位置

$arr = [1,2,3,4,"one"=>5];

while(true)

} reset($arr);

//第二種方式:

dowhile(next($arr));

reset($arr);

js陣列及其遍歷方式

陣列的定義 let arr 1,2,abc true js是弱型別語言,陣列中元素可以是不同型別的,boolean型別放入值就是對應的字串true或false length屬性 表示陣列的長度,元素的個數,length屬性是可變的,這一點需要特別注意。當length屬性被設定得更大時,整個陣列的狀態...

php遍歷陣列有幾種方式?

對於純數字索引的陣列可以通過for迴圈來遍歷陣列,但是要注意的是數字索引必須是連續的,否則會獲取不到陣列中的部分資料。遍歷不受陣列內部指標影響。ar1 range a e len count ar1 for i 0 i len i ar1 array 0 a 2 c d len count ar1 ...

php遍歷陣列的幾種方式

只支援索引陣列,不支援關聯陣列 123 45 array a b c d for i 0 i 索引陣列和關聯陣列都可以 1234 foreach array as key value 實質上是指標移動 支援索引陣列和關聯陣列 注意 each 在7.2以上版本已被棄用,會報 warning 警告錯誤 ...