如何在数组上创建无限循环

时间:2013-11-20 12:06:08

标签: php arrays

我需要每5次在for子句

上循环从数组中获取一个项目

我的数组

$myArray = array( 1 => 'element 1',  2 => 'element 2',  3 => 'element 3' );

my for loop

for ($i=1; $i<=50; $i++) {

  echo "echo this each time ";

  if ($i%5 === 0) $myitem = next($myArray);
  echo "echo my array item every 5 times " .$myitem; 
  // but starting again from first if i reach the end of array

}

如果我到达目的地,我需要获得数组中的第一项

3 个答案:

答案 0 :(得分:1)

我不知道为什么你需要这个,但这样的事情应该有效:

$fancyvarname = 0;

for ($i=1; $i<=50; $i++) {

   echo "echo this each time ";

   if ($i%5 == 0){
      $myitem = $myArray[$fancyvarname % count($myArray)];
      $fancyvarname++;
      echo "echo my array item every 5 times " .$myitem; 
   }

}
编辑:你注意到 === 而不是 == 吗?

答案 1 :(得分:0)

您可以尝试:

if ($i % sizeof($myArray) === 0 ) reset($myArray);

答案 2 :(得分:0)

for $i=0; $i<50; $i++) {
    if ($i%5===0) echo "...5 times ".$myArray[$i%count($myArray)];
}

当然你可以在循环外部使用count()来节省一些cpu时间