En realidad, tengo este ciclo foreach:
- ...
Vuelve:
- ...
- ...
- ...
- ...
...
Ahora necesito cambiar el ciclo para poner cada 3
, entonces puedo tener:
- ...
- ...
- ...
- ...
- ...
- ...
...
¿Cómo tengo que modificar el ciclo foreach para lograr ese resultado?
Esto debería funcionar para usted:
Simplemente array_chunk()
su matriz en trozos de 3 y luego implode()
cada subarray, por ejemplo
" . implode(" ", $task) . " "; } ?>
prueba esto
foreach (array_chunk($arrays, 3, true) as $array) { echo ''; foreach($array as $value) { echo "- ".$value."
"; } echo '
'; }
Por favor, intente esto ..
$task ) { ?>
Me gusta la respuesta de @Rizer123 para la concisión, pero si desea seguir iterando sobre los elementos individuales, en lugar de fragmentar (por ejemplo, si necesita realizar alguna manipulación en los elementos individuales), sugeriría algo como lo siguiente:
$task ) { if($k % 3 == 0) { ?>
- ...
if($k % 3 == 2) { ?>