为了账号安全,请及时绑定邮箱和手机立即绑定

这两句话有啥区别??

foreach($students as $key=>$val)和foreach($val as $v)。

正在回答

4 回答

foreach($students as $key=>$val)  同时取下标和值

上面个输出$key=>$val的代表值   

foreach($val as $v)    

只输出一个值就是$v    

都是数组循环,用于遍历数组的简单方式

$val和$key就是个id的意思代表$students里的值

as固定格式

1 回复 有任何疑惑可以回复我~

提示:foreach 语法结构提供了遍历数组的简单方式。

$key与$v是形参,你可以理解成是未传值的变量,as是该语法结构形式规范符。就好像算术运算中用+号表示前后者之和。在foreach语法结构中as有解析前面数组单元传递值或键值给后面相应的一个或两个形参的意味,本质上是foreach语法结构的一部分,简单点相当于你学英文的语法。

foreach仅能够应用于数组和对象。有两种语法:  

foreach (array_expression as $value){                     

   statement; }

foreach (array_expression as $key => $value){      //数组元素的键->$key, 值->$value

   statement; }

第一种格式遍历给定的array_expression 数组。每次循环中,当前单元的值被赋给$value并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。

第二种格式做同样的事,当前单元的键名会在每次循环中被赋给变量$key,当前单元的值会在每次循环中赋给变量$value

原理:当foreach开始执行时,数组内部的指针会自动指向第一个单元。这意味着不需要在foreach循环之前定义变量


1 回复 有任何疑惑可以回复我~

这个$val是数组$students的值,而这个$val本身又是一个数组

0 回复 有任何疑惑可以回复我~

之前的哪个$val是啥意思??是不是因为里面有姓名和成绩,所以就做个$val,然后在下面做个$val as $v??

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP入门篇
  • 参与学习       455994    人
  • 解答问题       6306    个

PHP入门教程轻松学习,行业大牛帮您快速掌握PHP编程基础知识。

进入课程

这两句话有啥区别??

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信