💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 17.4.1.使用foreach语句遍历数组 遍历:就是对数组的每一项都“访问”到并进行所需要的数据处理。 ``` foreach( $数组名 as [$key =>] $value){ //这里,$key和$value只是变量,它会在遍历数组的过程中,按顺序依次取得数组每个单元的下标和值。 echo “<br />{$key} >>> {$value} “; } ``` ![](https://img.kancloud.cn/35/59/355961aa7a384ed8a676b211613a26b8_658x269.png) foreach原理: ![](https://img.kancloud.cn/45/4b/454b7fdd4ab4e5192aabf8dd63df8cfd_615x288.png) 演示案例1: 输出以下这个数组的每一项,并求其平均值: ``` $arr1 = array(11, 12, 13, 14); ``` 演示案例2: 使用数组的遍历语法,求以下这个数组的最大值及其下标! ``` $arr2 = array(11, 18, 21, 14, 8); ``` ![](https://img.kancloud.cn/b6/79/b679950fb669e1bb7b70391e5c4bd4b1_721x536.png) ## 17.4.2.使用for循环语句遍历数组 数组的指针:每一个数组内部,都有一个“指针”,正常情况下,指针指向数组的某个单元,起初默认是指向第一个单元。 ``` 对于数组 $arr1 = array( 18, 22, 13, 28, 15, 33, ); ``` 图示如下: ![](https://img.kancloud.cn/fc/02/fc025849221e80b04eae253ab20d2682_939x69.png) 初始状态下,指针指向数组的第一个单元。 php中,有如下几个函数,可以针对数组指针进行相应操作: ``` $re = current( $arr1); //取得数组中当前指针所在单元的值; $re = key( $arr1 ); //取得数组中当前指针所在单元的键(下标); $re = next( $arr1 ); //将数组中的指针往后移动一个位置,并取得新位置上的值; $re = prev( $arr1 ); //将数组中的指针往前移动一个位置,并取得新位置上的值; $re = end( $arr1 ); //将数组中的指针移动到最后一个位置,并取得新位置上的值; $re = reset($arr1); //将数组中的指针移动到最前一个位置,并取得新位置上的值; ``` 课堂练习: 请用for(即不用foreach)来遍历如下数组,并按顺序输出其每一个单元的键和值: ``` $arr1 = array(‘a’, 2=>’b’, ‘c’, ‘x’=>’d’, ‘e’); //提示:count()函数可以求数组的长度 ``` ![](https://img.kancloud.cn/b3/23/b3233849337d475b612e6648adc3dee0_598x502.png)