php手冊 php陣列的遍歷有哪幾種方式?php陣列如何遍歷?

sfi799發表於2021-04-16

原創文章引自(https://www.ympfb.com/show-29-121-1.html)

php手冊 php陣列的遍歷有哪幾種方式?php陣列如何遍歷?

偽型別:

mixed,說明一個引數可以接受多種不同的型別。 number,說明一個引數可以是整型或浮點型。 callback,說明引數是一個回撥函式。 void,如果作為返回型別,意味著函式的返回值是沒有用的。作為引數列表中的內容意味著不接受任何引數

陣列遍歷

遍歷, 是指對陣列中每一個元素,挨個去處理.

方式一 foreach

1

<?php

23

  $arr = ['a', 'b', 'c', 'd'];

45

  foreach( $arr as $k => $v ){

6

 .... 

7

  }

89

  /*

10

     $arr  是要遍歷的陣列

11

     把陣列中每一個元素拿出來  下標    賦值給$k

12

                             元素值  賦值給$v

13

14

     換句話講, $k 和 $v 相當於形參

15

  */

1617

?>

方式二 for

1

<?php

2

3

 $arr = ['a', 'b', 'c', 'd'];

4

  $n = count( $arr );

5

6

  for($i = 0; $i < $n; $i++){

7

 echo $arr[ $i ];

8

  }

910

  /*

11

  陣列的下標, 必須是連續的索引陣列

12

  */

1314

?>

方式三 指標

reset( ) 把陣列內部指標指向第一個單元

next( ) 將陣列中的內部指標向前移動一位

prev( ) 將陣列中的內部指標倒回一位

end( ) 將陣列的內部指標指向最後一個單元

current( ) 返回指標當前位置的 值

key( ) 返回指標當前位置的 下標

1

<?php

2

3

 $arr = ['a', 'b', 'c', 'd'];

45

  reset($arr);

67

  while($v = current( $arr )){

8

 ....

9

 next($arr);

10

  }

1112

?>

方式四 list…each

1

<?php

2

3

 $arr = ['a', 'b', 'c', 'd'];

45

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

6

7

 echo $k.'----'.$v;

8

9

 }

1011

  /*

12

  each(陣列)     每一次取出一個元素, 返回一個陣列

13

  list($k, $v) 

14

      把下標為0的內容賦值給$k

15

      把下標為1的內容賦值給$v

16

  */

1718

?>
``````php
1

<?php

2

3

 $arr = ['a', 'b', 'c', 'd'];

45

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

6

7

 echo $k.'----'.$v;

8

9

 }

1011

  /*

12

  each(陣列)     每一次取出一個元素, 返回一個陣列

13

  list($k, $v) 

14

      把下標為0的內容賦值給$k

15

      把下標為1的內容賦值給$v

16

  */

1718

?>
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章