<?php
// Primeiro, vamos pegar um array com doze ítens para teste:
'um', 'dois', 'tres', 'quatro', 'cinco', 'seis',
'sete', 'oito', 'nove', 'dez', 'onze', 'doze'
);
// depois, vamos contar o número de ítens
$qtdItens= count( $itens );
// Aqui você define quantas colunas e linhas quer:
$numColunas= 4;
$numLinhas= 5;
// O número de linhas poderia ser calculado automaticamente com facilidade,
// baseado no número de colunas, mas vou me ater ao enunciado.
for( $l = 0; $l < $numLinhas; $l++ ) {
for( $c = 0; $c < $numColunas; $c++ ) {
// vamos calcular de que ítem se trata:
$itemAtual = $c + ( $l * $numColunas );
// e decidir se imprimimos o [ítem] ou [Vazio]
if( $itemAtual < $qtdItens) {
echo '['.$itens[$itemAtual].']';
} else {
echo '[Vazio]';
}
}
echo "\n"; //trocar por "<br>\n" se for exibir em página
}
?>
PD9waHAKICAgLy8gUHJpbWVpcm8sIHZhbW9zIHBlZ2FyIHVtIGFycmF5IGNvbSBkb3plIMOtdGVucyBwYXJhIHRlc3RlOgogICAkaXRlbnMgPSBhcnJheSgKICAgICAgJ3VtJywgJ2RvaXMnLCAndHJlcycsICdxdWF0cm8nLCAnY2luY28nLCAnc2VpcycsCiAgICAgICdzZXRlJywgJ29pdG8nLCAnbm92ZScsICdkZXonLCAnb256ZScsICdkb3plJwogICApOwoKICAgLy8gZGVwb2lzLCB2YW1vcyBjb250YXIgbyBuw7ptZXJvIGRlIMOtdGVucyAKICAgJHF0ZEl0ZW5zPSBjb3VudCggJGl0ZW5zICk7CgogICAvLyBBcXVpIHZvY8OqIGRlZmluZSBxdWFudGFzIGNvbHVuYXMgZSBsaW5oYXMgcXVlcjoKICAgJG51bUNvbHVuYXM9IDQ7CiAgICRudW1MaW5oYXM9IDU7CiAgIC8vIE8gbsO6bWVybyBkZSBsaW5oYXMgcG9kZXJpYSBzZXIgY2FsY3VsYWRvIGF1dG9tYXRpY2FtZW50ZSBjb20gZmFjaWxpZGFkZSwKICAgLy8gYmFzZWFkbyBubyBuw7ptZXJvIGRlIGNvbHVuYXMsIG1hcyB2b3UgbWUgYXRlciBhbyBlbnVuY2lhZG8uCgogICBmb3IoICRsID0gMDsgJGwgPCAkbnVtTGluaGFzOyAkbCsrICkgewogICAgICBmb3IoICRjID0gMDsgJGMgPCAkbnVtQ29sdW5hczsgJGMrKyApIHsKICAgICAgICAgLy8gdmFtb3MgY2FsY3VsYXIgZGUgcXVlIMOtdGVtIHNlIHRyYXRhOgogICAgICAgICAkaXRlbUF0dWFsID0gJGMgKyAoICRsICogJG51bUNvbHVuYXMgKTsKCiAgICAgICAgIC8vIGUgZGVjaWRpciBzZSBpbXByaW1pbW9zIG8gW8OtdGVtXSBvdSBbVmF6aW9dCiAgICAgICAgIGlmKCAkaXRlbUF0dWFsIDwgJHF0ZEl0ZW5zKSB7CiAgICAgICAgICAgICBlY2hvICdbJy4kaXRlbnNbJGl0ZW1BdHVhbF0uJ10nOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgZWNobyAnW1ZhemlvXSc7CiAgICAgICAgIH0KICAgICAgfQogICAgICBlY2hvICJcbiI7IC8vdHJvY2FyIHBvciAiPGJyPlxuIiBzZSBmb3IgZXhpYmlyIGVtIHDDoWdpbmEKICAgfQo/Pg==