Buenas,
Una mejor opción es saber el número de registros que tienes y comprobar el módulo de la cantidad de datos por fila que quieras mostrar y cuando sea 0 hacer el salto de linea.
Para ello debemos entender que es un módulo:
Un módulo es el resto entre la división de dos números a y b en su forma de entero natural. Digamos que a:b = c (cociente) con resto (m), el resto es nuestro módulo y su operación se realiza con el símbolo de porcentaje (%; a % b = m).
1 % 2 = 1 (1 dividido entre 2 da como resultado 0 y resto 1)
2 % 2 = 0 (2 dividido entre 2 da como resultado 1 y resto 0)
Entonces para nuestro código sería:
Código PHP:
<?php
$valores = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17];
$limitPerRow = 5;
foreach($valores As $k=>$v) {
if($k%$limitPerRow == $limitPerRow-1) echo $v.PHP_EOL; // salto de fila
else echo $v." "; // muestreo con normalidad
}
echo PHP_EOL;
?>
El script lo realicé para PHP CLI para testearlo con facilidad en la terminal.
El output sería el siguiente:
Código:
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17
Espero que te sirva.
Un saludo!