each函数可遍历数组获取键值对,需配合while循环、list解构或for循环使用,但foreach是更安全高效的现代替代方案。

如果您在PHP中需要遍历数组并获取每个键值对,each函数可以用于逐个返回当前元素的键和值。以下是使用each输出数组中每一个值的具体步骤:
each函数每次调用会返回当前数组指针所指向元素的键值对(包含key、value、0、1四个索引),并自动将内部指针前移一位;因此需配合while循环持续调用,直到返回FALSE为止。
1、定义一个关联数组,例如:$arr = ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'];
2、使用reset()确保数组指针位于起始位置:reset($arr);
立即学习“PHP免费学习笔记(深入)”;
3、编写while循环,每次调用each()并判断是否为FALSE:while ($item = each($arr)) { echo $item['key'] . ' => ' . $item['value'] . '
'; }
each()返回的数组结构固定,可利用list()一次性提取key和value,使代码更清晰易读,避免重复访问索引。
1、初始化数组:$data = [10 => 'ten', 20 => 'twenty', 30 => 'thirty'];
2、重置指针:reset($data);
3、使用list()接收each()返回的键值:while (list($k, $v) = each($data)) { echo "Key: $k, Value: $v
"; }
通过控制循环次数与each调用次数匹配,可在已知数组长度前提下限制遍历范围,适用于需截断输出或分页处理的场景。
1、获取数组长度:$len = count($arr);
2、初始化计数器并重置指针:$i = 0; reset($arr);
3、使用for循环调用each指定次数:for (; $i '; } }
each函数自PHP 7.2.0起被废弃,且在PHP 8.0+中完全移除;current()与key()组合可模拟其行为,保持代码向后兼容。
1、定义数组并重置指针:$nums = ['x' => 1, 'y' => 2, 'z' => 3]; reset($nums);
2、使用while循环判断current()是否非空:while (false !== current($nums)) { echo key($nums) . ' => ' . current($nums) . '
'; next($nums); }
foreach是each最直接、最推荐的现代替代方式,无需手动管理指针,语法简洁,性能更优,且完全兼容所有PHP版本。
1、声明待遍历数组:$fruits = ['red' => 'strawberry', 'yellow' => 'mango', 'purple' => 'grape'];
2、使用foreach直接获取键与值:foreach ($fruits as $key => $value) { echo $key . ' => ' . $value . '
'; }
以上就是怎么使用each输出数组中每一个值PHP_PHP each输出数组技巧【步骤】的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号