• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

使用foreach循环二维数组后的有关问题

php 搞代码 4年前 (2022-01-24) 13次浏览 已收录 0个评论

使用foreach循环二维数组后的问题
循环二次的话,第二次循环就不显示,但是如果注释掉第一次的话,第二次循环的内容就可以正常显示,
哪位朋友知道原因的请告诉一下,非常感谢!

PHP code

<!---ecms Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->    $products2 = array(     array('名称' => '苹果','数量' => 6,'单价' => 12.2),     array('名称' => '香蕉','数量' => 2,'单价' => 15.1),     array('名称' => '西瓜','数量' => 3,'单价' => 25.3)        );//循环一    for ($i1=0;$i1<count($products2);$i1++) {     foreach ($products2[$i1] as $myvalues) {     echo $myvalues.'|';     }     echo '<br />';    }//循环二   // reset($products2); 就算加上重设指针,下面的循环还是显示不出来,但是如果把循环一注释掉的话,循环二就能正常显示了,哪位朋友知道原因的请告诉一下,谢谢了!    for ($i2=0;$i2<count($products2);$i2++) {     while (!!list($var1,$var2) = each($products2[$i2])) {        echo $var1.'-----'.$var2.'|';     }     echo '<br />';    }

在线等,先谢谢各位了!

——解决方案——————–
这个可能要子数组的指针也可重置。

for 没有指针的问题,

foreach,可能会移动指针,具体测测吧

each肯定是移动指针的。

你可以用全部用for, foreach,each分别测下看看。

——解决方案——————–
你第一轮遍历是针对$products2[$i1],而不是$products2。换句话说该reset()的是$products2[$i1],$products2的指针压根就没变动过
——解决方案——————–

PHP code

<?php $products2 = array(     array('名称' => '苹果','数量' => 6,'单价' => 12.2),     array('名称' => '香蕉','数量' => 2,'单价' => 15.1),     array('名称' => '西瓜','数量' => 3,'单价' => 25.3)    );//循环一    for ($i1=0;$i1<count($products2);$i1++) {     foreach ($products2[$i1] as $myvalues) {     echo $myvalues本文来源gao@!dai!ma.com搞$$代^@码!网!搞gaodaima代码.'|';      reset($products2[$i1]);//加了这句就可以了,应该用reset($products2[$i1])而不是reset($products2)     }     echo '
'; }//循环二 for ($i2=0;$i2<count($products2);$i2++) { while (!!list($var1,$var2) = each($products2[$i2])) { echo $var1.'-----'.$var2.'|'; } echo '
'; }?>


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:使用foreach循环二维数组后的有关问题

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址