搜索
首页后端开发php教程PHP中each与list用法分析比较

PHP中each与list用法,结合实例形式分析了each及list函数的使用技巧,并举例分析了each结合list函数实现数组遍历的技巧

具体如下:

1.each的用法

先看API

array each ( array &$array )

api里是这么描述的:each ― 返回数组中当前的键/值对并将数组指针向前移动一步

我们先来看看返回的数组是怎么样的?

<?php $arr = array('你','若','安','好','便','是','晴','天');
print_r(each($arr));
print_r(each($arr));
echo '<hr />';
/*
返回
Array
(
  [1] => 你
  [value] => 你
  [0] => 0
  [key] => 0
)
Array
(
  [1] => 若
  [value] => 若
  [0] => 1
  [key] => 1
)
*/
//执行相同的一段代码,从‘你'到‘若',说明each是会每执行一次,游标向数组尾部移动一步
//0和Key存放的是键
//1和value存放的是值
//因此each满足遍历数组的,得到当前的键和值,以及每执行一次,向尾部移动一步游标
//因此循环数组也可以用each这么写
reset($arr);
for(;$tmp=each($arr);){
  echo $tmp[0],'~',$tmp[1],'<br>';
}
/*
返回
0~你
1~若
2~安
3~好
4~便
5~是
6~晴
7~天
*/
?>

2.list的用法

先看api是怎么说的

像 array() 一样,这不是真正的函数,而是语言结构。list()用一步操作给一组变量进行赋值。  

来看一个例子:

<?php list($a,$b)=array(10,20);
echo $a,'~',$b,'<br />';
//返回10~20
?>

没错可以给一组变量赋值

再来看另外一个例子:

<?php list($a,$b,,$c)=array(2=>10,3=>20,4=>30,1=>40);
echo $a,'~',$b,'~',$c,'<br>';
//返回notice~40~20
//执行到$a的时候返回给我一个notice:说数组没有0键
?>

按照一般的想法应该会返回:10~20~40

为什么会返回这个notice~40~20呢?

答:这涉及到list的运行机制,list是这么赋值的

首先:不要管右边的数组,看List里面的变量,从左到右应该是  $a = arr[0]   $b=arr[1]  $c=arr[3]

然后:从右到左开始赋值,赋值的顺序是 $c=arr[3]  $b=arr[1]  $a=arr[0]

所以$c=20  $b = 40  因为没有arr[0],所以$a给了一个警告

3.用each和list实现数组的遍历

<?php $arr = array('你','若','安','好','便','是','晴','天');
for(;list($k,$v)=each($arr);){
  echo $k,'~',$v,'<br />';
}
/*
return:
0~你
1~若
2~安
3~好
4~便
5~是
6~晴
7~天
*/
?>

希望本文所述对大家PHP程序设计有所帮助。


声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
前端开发者需了解的PHP相关知识前端开发者需了解的PHP相关知识Mar 29, 2024 pm 03:09 PM

作为前端开发者,对于PHP的了解是非常有必要的。虽然PHP是一种后端开发语言,但是掌握一定的PHP知识可以帮助前端开发者更好地理解整个web开发的过程,提高工作效率并与后端开发者更好地协作。在这篇文章中,我们将讨论前端开发者需要了解的一些PHP相关知识,并提供具体的代码示例。PHP是什么?PHP(HypertextPreprocessor)是一种服务器

PHP中的新手入门指南PHP中的新手入门指南May 25, 2023 am 08:03 AM

PHP是一门热门的前端编程语言,它功能强大、易学易用,被广泛用于网站的开发和维护中。对于初学者来说,PHP入门需要一定的学习和掌握,下面就为大家提供一些PHP中的新手入门指南。一、学习基本概念在学习PHP之前,你需要了解一些基本概念。PHP是一种向Web服务器发出指令的脚本语言。简单来说,你可以使用PHP来生成HTML代码并将其发送给浏览器,最终呈现在网页上

PHP笔试基础薄弱?试试这些学习方法!PHP笔试基础薄弱?试试这些学习方法!Mar 01, 2024 pm 01:39 PM

PHP作为一种广泛应用于Web开发的脚本语言,已经成为许多互联网公司招聘技术人才时的必备技能之一。然而,对于一些刚入门或者基础薄弱的学习者来说,学习PHP可能会遇到一些困难。在面对PHP笔试时,怎样才能更好地提升自己的基础功力呢?接下来,我们将介绍一些学习方法,希望能够帮助大家提升PHP的基础知识和技能。1.养成阅读PHP官方文档的习惯PHP官方文档是学习

初学者必备:PHP基础错误及解决方法初学者必备:PHP基础错误及解决方法May 11, 2023 am 08:28 AM

在学习PHP的过程中,初学者会经常遇到各种各样的错误。虽然这是学习的自然过程,但不少初学者往往因为对错误的处理不当而丧失耐心。本文将介绍PHP基础错误及解决方法,旨在帮助初学者更轻松地入门PHP。一、语法错误1.1遗漏分号在PHP中,语句必须以分号结尾。如果不小心遗漏了分号,就会报错。例如,下面的代码会导致错误:&lt;?phpecho&quot;He

PHP值概览:了解PHP的重要概念PHP值概览:了解PHP的重要概念Mar 22, 2024 pm 03:09 PM

PHP值概览:了解PHP的重要概念,需要具体代码示例PHP(HypertextPreprocessor)是一种广泛应用于Web开发的脚本语言,它可以嵌入HTML中,也可以作为独立的脚本来执行。在Web开发中,了解PHP的一些重要概念对于编写高效、可维护的代码非常重要。在本文中,我们将介绍PHP的一些重要概念,并提供具体的代码示例来帮助读者更好地理解。变量变

PHP基础教程之数组函数PHP基础教程之数组函数Jun 20, 2023 pm 01:39 PM

数组函数是PHP中最常用的函数之一,它可以用于数组的创建、操作和管理。在开发应用程序时,使用数组函数可以大大提高开发的效率。本文将介绍PHP中数组函数的一些基本用法和例子,帮助大家更好地理解和掌握数组函数。一、数组的创建和初始化PHP中的数组可以通过以下方式创建://通过array()函数创建数组$arr=array(&quot;a&quot;,&q

阅读PHP文档的10个技巧阅读PHP文档的10个技巧May 24, 2023 pm 09:21 PM

PHP是一种非常流行的开源服务器端脚本语言,广泛应用于Web开发中。要成为一名优秀的PHP程序员,阅读官方文档是必不可少的。无论你是初学者还是资深开发者,下面这些技巧都将有助于你更有效地阅读PHP文档。了解文档结构PHP官方文档分为多个部分,包括手册、参考手册、FAQ、扩展库文档等。在开始阅读之前,先了解文档的结构,找到自己需要的部分。使用搜索功能PHP文档

织梦建站必备:掌握PHP的几个关键知识点织梦建站必备:掌握PHP的几个关键知识点Mar 27, 2024 pm 03:09 PM

在当今信息爆炸的互联网时代,网站已经成为各行各业展示和推广的重要途径,而PHP作为最为流行的服务器端脚本语言,无疑是众多网站开发者必备的技能之一。要想达到熟练掌握PHP,首先需要掌握几个关键的知识点,并通过具体的代码示例来加深理解。1.PHP基础语法PHP的基础语法与大多数编程语言相似,包括变量、数据类型、运算符、条件语句、循环语句等。以下是一个简单的示例

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器