php解答:php中遍历数组的五种方法是什么

 所属分类:php教程

 浏览:133次-  评论: 0次-  更新时间:2022-09-23
描述:更多教程资料进入php教程获得。 五种遍历方法:1、用“for($i=0;$i<数组长度;$i++)”;2、用“foreach(数组 as="">$v)”;3、用“while(li...
更多教程资料进入php教程获得。

五种遍历方法:1、用“for($i=0;$i<数组长度;$i++)”;2、用“foreach(数组 as="">$v)”;3、用“while(list($k,$v)=each(数组))”;4、用“array_map(回调函数,数组)”等。

php零基础到就业直播视频课:进入学习
程序员必备接口测试调试工具:立即使用

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php中遍历数组的五种方法

方法1:使用for循环语句

for循环会将控制循环次数的变量预先定义在for语句中,因此for循环语句能够按照已知的循环次数进行循环操作,适用于明确知道脚本需要运行的次数的情况。

for 循环的语法格式如下:

for (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;  
}

下面通过代码示例来具体看看:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array(2,"数学","梨子",3.14,"榴莲",12);
for ($i=0; $i < count($array); $i++) { 
    echo $array[$i] . "<br/>";
} 
?>

输出结果:

1.png

方法2:使用foreach循环语句

foreach是专门为遍历数组而设计的语句,是遍历数组时常用的方法,在遍历数组方面提供了很大的便利;PHP5后还可以遍历对象(foreach仅能够应用于数组和对象)。

foreach语句遍历数组与数组下标无关,且可以用于不连续的索引数组和以字符串为下标的关联数组。

下面通过代码示例来具体看看:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
foreach ($array as $val){
    echo "值是:" . $val ;
    echo "<br/>";
}
echo "<br/>";
foreach ($array as $key => $value) { 
    echo "键名为:".$key.",键值为:".$value . "<br/>";
} 
?>

输出结果:

2.png

遍历给定的 $array 数组,在每次循环中会将当前数组的值赋给 $value,键名赋给 $key。

方法3:利用while循环+each()+list()

each() 函数返回数组中当前的键值并将数组指针向前移动。在执行 each() 之后,数组指针将停留在数组中的下一个元素或者当碰到数组结尾时停留在最后一个元素。

而list() 函数用于在一次操作中给一组变量赋值。

while循环+each() 函数+ list() 函数可以遍历数组,下面通过代码示例来看看:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
while( list($key, $val) = each($array) ) {
    echo "$key => $val<br>";
}
?>

输出结果:

3.png

方法4:使用array_map()函数

使用匿名函数的方式,处理数组里的每个元素。遍历完成后返回一个新的数组

<?php
$arr = ['a', 'b', 'c'];
var_dump($arr);
$arr = array_map(function ($item) {
    return $item . '_i';
}, $arr);
var_dump($arr);
?>

4.png

你可以同时处理多个数组

<?php
header('content-type:text/html;charset=utf-8');   
$arr_1 = ['a', 'b', 'c'];
$arr_2 = ['你', '好', '吗', '原', '罪'];
// $arr_n = [...];
$arr = array_map(function ($item_1, $item_2) {
    return $item_1 . '_' . $item_2 . '_i';
}, $arr_1, $arr_2);

var_dump($arr); // ['a_你_i', 'b_好_i', 'c_吗_i', '_原_i', '_罪_i']
?>

5.png

方法5:使用array_walk()函数

以引用传递的形式遍历你的数组,没有返回值,而且只能处理一个数组。

<?php
$arr = ['a', 'b', 'c'];
array_walk($arr, function (&$item) {
    $item = $item . '_i';
});

var_dump($arr); 
?>

6.png

注意到 &$item 了吗,是的,多了个&,代表着你的形参是以引用传递接收数据的。你要做的就是想办法改变这个参数。

推荐学习:《PHP视频教程》

以上就是php中遍历数组的五种方法是什么的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: php,php数组,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!