如何在不使用“计数器”变量的情况下找出foreach构造在PHP中循环的次数?

前端之家收集整理的这篇文章主要介绍了如何在不使用“计数器”变量的情况下找出foreach构造在PHP中循环的次数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我有一个foreach结构,像这样:
  1. foreach ($items as $item) {
  2. echo $item . "<br />";
  3. }

我知道我可以通过使用计数器变量跟踪构造循环的次数,如下所示:

  1. $counter = 0;
  2.  
  3. $foreach ($items as $item) {
  4. echo $item.' is item #'.$counter. "<br />";
  5. $counter++;
  6. }

但是可以在不使用“计数器”变量的情况下完成上述操作吗?
也就是说,是否可以知道foreach循环中的迭代计数,而不需要“计数器”变量?

注意:我完全可以在我的循环中使用计数器,但我只是想知道是否有一个直接内置到PHP中的规定…它就像是一个很棒的foreach结构,它简化了某些操作,这些操作很笨拙使用for构造做同样的事情.

不,除非您的$items是一个具有以0键开头的连续索引(键)的数组,否则它是不可能的.

如果它有连续的索引吗:

  1. foreach ($items as $k => $v)
  2. {
  3. echo $k,' = ',$v,'<br />',PHP_EOL;
  4. }

但正如其他人所说,使用计数器变量并没有错.

猜你在找的PHP相关文章