Подтвердить что ты не робот

Как выполнить действие каждые 5 результатов?

Как я могу выполнить действие в цикле for каждые 5 результатов?

В основном я просто пытаюсь эмулировать таблицу с 5 столбцами.

4b9b3361

Ответ 1

вы можете использовать оператор модуля

for(int i = 0; i < 500; i++)
{
    if(i % 5 == 0)
    {
        //do your stuff here
    }
}

Ответ 2

Для таблицы HTML попробуйте это.

<?php
$start = 0;
$end = 22;
$split = 5;
?>
<table>
    <tr>
  <?php for($i = $start; $i < $end; $i++) { ?>
    <td style="border:1px solid red;" >
         <?= $i; ?>
    </td>
    <?php if(($i) % ($split) == $split-1){ ?>
    </tr><tr>
    <?php }} ?>
    </tr>
</table>

Ответ 3

Можно использовать условие с модулем, как указано. Вы также можете сделать это с помощью циклов вложенности.

int n = 500;
int i = 0;

int limit = n - 5
(while i < limit)
{
   int innerLimit = i + 5
   while(i < innerLimit)
   {
       //loop body
       ++i;
   }
   //Fire an action
}

Это хорошо работает, если n гарантированно кратно 5, или если вам не нужно увольнять дополнительное событие в конце. В противном случае вы должны добавить это к концу, и это делает его менее привлекательным.

//If n is not guaranteed to be a multiple of 5.
while(i < n)
{
  //loop body
  ++i;
}

и измените int limit = n - 5 на int limit = n - 5 - (n% 5)

Ответ 4

Другая вариация:

int j=0;
for(int i = 0; i < 500; i++) 
{ 
    j++;
    if(j >= 5) 
    { 
        j = 0;
        //do your stuff here 
    } 
}

Я старомодный, помню, когда деление заняло много времени. С современным cpus это, вероятно, не имеет большого значения.

Ответ 5

Это работает, чтобы получить индекс live внутри цикла foreach:

<?php

// Named-Index Array
$myNamedIndexArray = array('foo' => 'bar', 'go' => 'habs', 'CSGO_bestTeam' => 'fnatic', 'test' => 'one two', 'potato' => 'french fries', 'tomato' => 'ketchup', 'coffee' => 'expresso', 'window' => 'cleaner', 'truck' => 'load', 'nine' => 'neuf', 'ten' => 'dix');

// Numeric-Index Array of the Named-Index Array
$myNumIndex = array_keys($myNamedIndexArray);


foreach($myNamedIndexArray as $key => $value) {
    $index = array_search($key,$myNumIndex);

    if ($index !== false) {
        echo 'Index of key "'.$key.'" is : '.$index.PHP_EOL;

        if (($index+1) % 5 == 0) {
            echo '[index='.$index.'] stuff to be done every 5 iterations'.PHP_EOL;
        }
    }

}

Ответ 6

// That an easy one

for($i=10;$i<500;$i+=5)
{
    //do something
}