Таблица, TR каждый 2 цикла, PHP, HTML

Я получил таблицу html, и я использую некоторый цикл для получения некоторых данных, эти данные отображаются следующим образом:

Data ... next loop 

Но я не хочу закрывать таблицу строк (tr) каждые 2 или даже 3 цикла. Таким образом, данные могут выглядеть так:

  Data Data1 Data2  ...next loop... 

Вы поможете мне с этим?

Если у вас есть счетчик в вашем цикле, вы можете использовать для этого модуль.

В основном это то, что осталось от числа, если вы разделите его.

Пример:

 for($i = 1; $i < 11; $i++) { if ($i % 2 === 0) { print('this is printed every two times'); } if ($i % 3 === 0) { print('this is printed every three times'); } } 

Если вы используете foreach() вместо этого, вам нужно просто сделать счетчик самостоятельно (как указано в Link, вы также можете использовать key массива, если он содержит приятные дополнительные клавиши):

 $i = 1; foreach($array as $item) { if ($i % 2 === 0) { print('this is printed every two times'); } if ($i % 3 === 0) { print('this is printed every three times'); } $i++; } 

Или в вашем конкретном случае это будет выглядеть примерно так:

 print(''); $i = 1; foreach($array as $item) { if ($i % 3 === 0) { print("\n"); } print("$item\n"); $i++; } print(''); 

Вышеприведенное является лишь основным примером.

Вы также должны проверить, сбалансировано ли количество столбцов, а также не добавлять столбцы или пустые столбцы для его балансировки.

Использование оператора modulo (%) всегда является отличным решением проблемы, о которой вы говорили выше. Поскольку вы не указали детали языка реализации, я взял на себя смелость предоставить вам пример php того, как это делается.

  tag after 3 outputs of the  tags $data = "Data"; // Placeholder of the data echo ""; for($i = 1; $i <= 10; $i++) { echo "{$data}"; if ($i % 3 == 0) echo ""; // Close and reopen the  tag } echo ""; ?>