重蔚php学习第三十二天——利用each和list遍历php数组

语法

each

array each (array $array)

表示将数组中当前元素的信息保存到某个数组中,如果得不到元素信息,返回false,能得到就返回数组

返回的这个数组包含4个数组元素

[1]=当前元素的值

[‘value’]=当前元素的值

[0]=当前元素的名

[‘key’]=当前元素的名

list

void list (mixed $varname,mixed ...)

表示将一个数组中的信息保存到指定的变量量

list只能获得数组中数字索引的下标的值

list获取数组元素时,只能获取数字索引的元素

list获取数组元素时,会按数字索引从小到大的顺序进行获取

代码示例

例1:each的用法

image015

例2:list的用法

image016

利用each和list组合遍历数组

image017

each与foreach的区别?

image018

区别

foreach在执行之后,再执行foreach仍然可以遍历到数组元素的数据

each在执行之后,再执行each遍历不到数组元素的数据

原理

each每次执行后,指针向下移动一位,最后一个元素遍历后,指针指向未知区域,所以下次调用each是遍历不到任何数据的

foreach 每次执行后,指针向下移动一位,最后一个元素遍历后,指针也指向未知区域,但是foreach语句执行时,先将数组指针重置,让数组指针重新指向第一个元素。

foreach是语句结构,像:return; break;

each是函数,不能确定它的执行次数,如果每次都重置,那么用户遍历到的永远是第一条数据。

如果想用each遍历多次,可以考虑使用

reset()函数将数组指针重置,指向第一个元素。

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/2619.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚的头像重蔚管理团队
上一篇 2017年10月9日 13:01
下一篇 2017年10月10日 08:38

相关推荐

  • PHP中的功能测试框架。

    随着软件项目的不断增多,开发人员经常会遇到各种的问题。其中最让人头痛的问题之一就是,如何保证项目代码的质量和稳定性。为此,很多开发人员都开始采用各种测试框架来测试他们的代码是否达到了预期的要求。在这…

    2023年5月30日
    02
  • php之管理全局状态

    管理全局状态在命令式语言中总是需要一些全局空间。在编程 PHP 或扩展时,我们将明确区分我们所称的请求绑定全局变量和真正的全局变量。请求全局变量是处理请求过程中需要携带和记忆信息的全局变量。一个简单的例子…

    2022年6月12日
    0127
  • PHP入门指南:分布式系统。

    PHP入门指南:分布式系统随着互联网技术的飞速发展,分布式系统已经成为了大规模应用的必备选择。而PHP语言能够在Web开发中发挥出色的作用,为分布式系统的构建提供了可靠的基础。本文将带领读者了解PHP语言在分布…

    2023年5月22日
    02
  • php生成微信红包数组

    php生成微信红包数组 源代码 代码图 效果图

    2018年4月27日
    0227
  • PHP使用SMTP协议发送邮件的优化技巧。

    随着互联网的发展,邮件成为了人们日常生活和工作中不可或缺的重要工具。在软件开发领域,也需要使用邮件进行系统通知、垃圾邮件过滤等工作。其中,使用PHP语言发送邮件已成为一种常见的方式。但是,PHP发送邮件的…

    2023年5月23日
    03
  • 如何在PHP中使用TDD。

    随着软件开发中采用敏捷开发的方式越来越普及,测试驱动开发(TDD)已经成为许多开发人员的重要实践。在TDD中,写代码之前先编写测试用例,通过测试来驱动整个开发过程。这篇文章将介绍如何在PHP中使用TDD来开发高…

    2023年5月23日
    03
  • PHP入门指南:共享内存。

    在Web开发领域中,PHP是一种非常流行的编程语言。它被广泛应用于动态网站的开发,也用于开发各种类型的框架和应用程序。在这个快速发展的行业中,学习PHP编程语言可以为您打开许多机会。在本篇文章中,我们将分享共…

    2023年5月22日
    02
  • PHP8.0中的JVM序列化库

    随着PHP 8.0的发布,许多新功能得到了带来。其中之一是引入了JVM序列化库,这是一项旨在提高性能的功能。在这篇文章中,我们将详细探讨PHP8.0中的JVM序列化库。JVM序列化是什么?在开始之前,让我们先了解一下JVM序…

    2023年5月19日
    07

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息